0

C++ ソース コードのワイド文字列リテラル、つまり大文字で始まるものに一致する正規表現を探していますL

L"Hello World!"

L", "1 行に複数のリテラルがある場合があり、次の例では一致してはなりません。

"some string literal ending in L", "another string literal"

これを行う最善の方法は何ですか?

4

1 に答える 1

0

Lこの正規表現は、最後の-string リテラル (およびそれ以前のすべて) を照合することで、問題を部分的に解決します。

(^[^"\r\n]*(?:"[^"\r\n]*"[^"\r\n]*)*)L"([^"\r\n]*)"

これにより、正規表現を繰り返し検索して、次の置換に置き換えることができました。

\1u"\2"

これは私のタスクには十分でした ( L-literals をu-literals に置き換えます)。

于 2013-09-02T13:16:27.787 に答える