我正在寻找一个正则表达式来匹配C ++源代码中的宽字符串文字,即那些以大写L
开头的字符串文字:
L"Hello World!"
一行上可能有多个文字,并且在以下示例中不得与L", "
匹配:
"some string literal ending in L", "another string literal"
最好的方法是什么?
答案 0 :(得分:0)
这个正则表达式通过匹配最后的L
- 字符串文字(以及之前的所有内容)来部分解决问题:
(^[^"\r\n]*(?:"[^"\r\n]*"[^"\r\n]*)*)L"([^"\r\n]*)"
这允许我反复搜索并替换正则表达式:
\1u"\2"
这对我的任务来说已经足够了(用L
替换u
- 文字 - 文字。)