这是一个示例字符串。我需要修复其中的更多内容:
"måde", "answer" => "råd");
在此字符串中有2个字符实例å。我希望使用正则表达式找到råd中的å匹配,而忽略måde中的å。
所以基本上我需要找到answer
之后å发生的匹配。
我认为(?<=answer)å(?=\;)
会起作用,但我对此非常陌生,如果有人能指出我正确的方向,我会非常感激。
我之前尝试过这个问题,但由于某种原因而被投票,所以我试着在这里重新制定它。我希望它足够清楚。
答案 0 :(得分:3)
看后面(通常)不能是可变长度,但是通过使用否定向前看,你告诉它匹配 not :
å(?!.*answer)
这匹配“å”,但仅在“回答”没有出现在其后的某处。
答案 1 :(得分:1)
(?<=answer.*?)å(?=.*?;)
应该有用(我不认为你需要逃脱分号,但根据你的应用程序,你可能需要重新分配它。)
基本上:Lookaheads / Lookbehinds仍然&#34;匹配&#34;在你所处的位置。
编辑:许多正则表达式引擎(包括Sublime Text 2&#39; s)不像前瞻/后瞻断言中的量词。请改用(?<=answer).*?å.*?(?=;)
,然后使用第二个正则表达式搜索结果匹配。