boost:regex, nach Wörtern suchen
-
Hallo!
Wie kann ich am besten mit boost::regex nach Wörtern in einem String suchen?
// Ein Beispielstring: regex expression( "(^|\\W)wort(\\W|$)", boost::regbase::icase ); bool matched; matched = regex_search("das ist ein wort", m_regex); //true matched = regex_search("das ist einwort", m_regex); //false //etc.
Werde erst wieder am Freitag Abend ins Forum schauen können. Freue mich bis dahin auf Antworten.
-
regex expression( "\\<wort\\>", boost::regbase::icase );
-
Es funktioniert, herzlichen Dank!
Warum steht sowas nicht in den boost regex docs?
-
Vielleicht, weil die boost-Entwickler davon ausgehen, dass jemand die Basics von reg. Ausdrücken beherrscht wenn er sie anwenden will?
-
Seitdem ich mich mit reg. Ausdrücken beschäftige und beschäftigt habe, ist mir nicht ein einziges mal das Metazeichen '\<' bzw. '\>' unter die Augen gekommen. Ich würde mich nicht als Profi bezeichnen, was die Kenntnisse in reg. Ausdr. anbelangt, aber die Grundlagen habe ich schon längst begriffen.
Ich glaube nicht, dass derjenige, der für die boost regex docu verantwortlich ist bei der Erstellung desselbigen besondere Kenntnisse seitens des Anwenders vorausgesetzt hat. Wäre es so gewesen, dann hätte der Author z.B. darauf verzichten können zu erklären welche Bedeutung der Punkt, der Stern, das Fragezeichen etc. in regulären Ausdrücken haben.
Egal wie du jetzt zu meiner Kritik stehst, ich fände es wäre einfach benutzerfreundlicher wenn man die komplette Syntax der reg. Ausdrücke in boost dokumentieren würde.
-
Es gibt Kurzreferenzen zu regular expressions in Buchform...
Regular expression pocket reference | ISBN: 059600415XSoll boost etwa eine 100-seitige Doku zu regex anbieten?