Regex 正则表达式获取第一个和最后一个倒逗号之间的文本
文本为Regex 正则表达式获取第一个和最后一个倒逗号之间的文本,regex,Regex,文本为-”http://en.wikipedia.org/wiki/“杰克·福尔摩斯的地上之声”:嘿。我需要正则表达式来获取http://en.wikipedia.org/wiki/杰克·霍姆斯的“地上之声”。我试图写\“(.*?”,但失败了,因为倒逗号是嵌套的。我需要得到最后出现的“最后一个结束部分” 我想我需要消极的前瞻性解决方案,但不确定 "(.*)" 这会抓住两个双引号之间的所有内容,并以贪婪的方式抓住。这意味着它会尝试在两个引号之间匹配尽可能多的文本 这将抓住两个双引号之间的所有内容
-”http://en.wikipedia.org/wiki/“杰克·福尔摩斯的地上之声”:嘿
。我需要正则表达式来获取http://en.wikipedia.org/wiki/杰克·霍姆斯的“地上之声”
。我试图写\“(.*?”
,但失败了,因为倒逗号是嵌套的。我需要得到最后出现的“最后一个结束部分”
我想我需要消极的前瞻性解决方案,但不确定
"(.*)"
这会抓住两个双引号之间的所有内容,并以贪婪的方式抓住。这意味着它会尝试在两个引号之间匹配尽可能多的文本
这将抓住两个双引号之间的所有内容,并以贪婪的方式抓住。这意味着它将尝试在两个引号之间匹配尽可能多的文本。实际上,OP需要基于他的请求:
(?<=").*(?=")
# match only the contents without the external double quotes "..." ->
# http://en.wikipedia.org/wiki/"The_Above_Ground_Sound"_of_Jake_Holmes
(?
# http://en.wikipedia.org/wiki/杰克·霍姆斯的“地上之声”
根据OP的请求,OP实际需要的是:
(?<=").*(?=")
# match only the contents without the external double quotes "..." ->
# http://en.wikipedia.org/wiki/"The_Above_Ground_Sound"_of_Jake_Holmes
(?
# http://en.wikipedia.org/wiki/杰克·霍姆斯的“地上之声”
我尝试了一些东西并创建了-“(.*)(\”)(.*”)(.*”)。这很有效。让我知道我们是否可以有更干净的东西。删除
?
以使匹配变得贪婪。什么是语言或工具?@Tensibai,我的是一个很好的例子,在我们需要针的时候用剑缝合。谢谢它会起作用。我尝试了一些东西并创建了-“(.*?)(\”)(?!.*\")。这很有效。请告诉我我们是否可以有更干净的。删除?
以使匹配变得贪婪。什么是语言或工具?@Tensibai,我的是一个很好的例子,在我们需要针的时候用剑缝合。谢谢,它会起作用。为什么要逃避引号?它们在正则表达式中不是特殊字符,可能取决于使用的语言,但是只要我们不知道,就没有理由引入反斜杠。完全正确,我只是假设它们需要在包含转义的示例中使用的解释器中转义。我将编辑我的答案以反映这一点。为什么要转义引号?它们不是正则表达式中的特殊字符,可能取决于使用的语言,但只要我们不这样做我不知道,没有理由引入反斜杠。完全正确,我只是假设它们需要在解释器中转义,用作包含转义的示例。将编辑我的答案以反映这一点。