0

regex.h を使用して c/c++ で正規表現を使用しようとしています。たとえば、先読みオプションを使用しようとしています。

(?=>#).*

「#」の後の文字列を抽出するため

何らかの理由で、一致するものを見つけることができません。regex.h は先読み/後読みをサポートしていますか? 私が使用できる別のライブラリはありますか?

Linuxでregex.hを使用しています。

4

2 に答える 2

1

あなたが話しているのは本当に後読みであり、先読みではないと思います。しかし(?<=#).*、なぜそれをそれほど複雑にするのですか? 他のレスポンダーの何人かが提案したように、単に使用#(.*)して、キャプチャ グループから目的のテキストを引き出してみませんか?

また、本当に NSRegularExpression を使用していますか? Apple の iOS/MacOS 開発者フレームワークの Objective-C クラスであることを考えると、それはありそうもないことです。

于 2012-05-02T23:40:48.073 に答える
1

NSRegularExpression は libicu の単なるラッパーであり、先読みをサポートしていると確信しています。例にタイプミスがあります。正しい構文は(?=#).*リンクに従っています。

ただし、この場合は実際には必要ないよう#.*です。

于 2012-05-02T19:53:52.373 に答える