需要帮助使用正则表达式在字符串中的引号和嵌入引号之间捕获文本

时间:2014-11-13 12:08:35

标签: regex parsing

这是我的代码。我正在使用RegexBuddy进行测试:

"([^"]*)(?:\\.[^"\\]*)*"

以下是我正在测试的样本。

嵌入式Qu的字符串 \"The quick fox\" jumped over \"the lazy dog\"返回:

The quick fox\

the lazy dog\

"The quick fox" jumped over \"the lazy dog\"返回:

The quick fox

the lazy dog\

以下是我遇到的问题:在嵌入式引号之间捕获文本时,匹配的文本在结尾处有反斜杠。谁能告诉我如何将它包含在上面的正则表达式模式中?

谢谢

3 个答案:

答案 0 :(得分:1)

\\?["][^"]+\\?["]

这将匹配“和”内的内容,但匹配包括“或\”

(?<=[\\]?")\S.*?(?=[\\]?")

这个匹配没有任何

"\",但它需要在文本中的每个"\"后面留一个空格

答案 1 :(得分:0)

"([^"\\]+)\\"

试试这个。看看demo.Grab捕获。

http://regex101.com/r/pQ9bV3/6

答案 2 :(得分:0)

不确定是否完全理解您的要求,但您可以尝试这样的事情:

"((?:[^\\"]+|\\[^"])*+)\\?"