我应该在Notepad ++中使用什么正则表达式来替换以下字符串中的所有?
?目标字符串由/
之后和.jpg
之前的所有字符生成?
example.com/longtext?longtext.jpg
example.com/anothertext?anothertext.jpg
example.com/text?text.jpg
...
您会使用什么正则表达式将?
替换为_
?
答案 0 :(得分:2)
(/[^/]+)\?(?=.+?\.jpg)
$1_
答案 1 :(得分:1)
这里不需要正则表达式。
你正在寻找一个角色"?&#34 ;;并且你想用" _"替换它。对于那个"这是一个简单的"取代大多数语言可以处理而不需要转向正则表达式。
答案 2 :(得分:1)
您可以使用以下正则表达式。它使用正向前瞻来选择所有?
,其后面是(?=)
内的模式。问号和.jpg
之间的字符选择器具有非贪心量词*?
,允许在一个字符串内进行多次替换。搜索到的元素也将位于匹配组$ 1:
(\?)(?=.*?\.jpg\b)
要匹配所有出现的情况,您需要使用特定于语言的函数或标记/g
:
/(\?)(?=.*?\.jpg\b)/g