我在这里看到很多关于正则表达式的问题,但问题是它们通常(像我的一样)非常本地化,如果不是正则表达式专家,很难推断出来。
我的字符串包含引号和大括号之类的字符,它们以使正则表达式变得更加困难而闻名。
我想知道执行此任务所需的表达式字符串(搜索、替换)。
换句话说,在:
ereg_replace (string pattern, string replacement, string subject)
我将需要string pattern
andstring replacement
表达式。
我的字符串是
array('val' => 'something', 'label' => 'someword'),
我需要更改最后一部分:
'label' => 'someword'),
到
'label' => __('someword','anotherstring')),
我将为此使用 php,但我也想使用 Notepad ++ 对其进行测试(并在其他情况下使用)。(我不知道它是否真的改变了搜索和替换字符串)。
请注意,字符串someword
也可以是SomeWord
或SOMEWORD
什Some word
至或大小写Some_Word
,这意味着它可以包含空格、下划线或实际上几乎任何来自内部的字符......)
编辑一:忘了说这__()
部分当然是用于翻译的 wordpress 文本域功能。例如__('string','texdomain')
编辑二:
很抱歉,如果我在评论中过于苛刻或要求太高,我确实会尝试理解,而不仅仅是复制粘贴在其他情况下可能对我不起作用的解决方案.. :-)
编辑三:
在这个工具的帮助下,我了解到我的基本误解是在 regex 中使用 VARIABLES 的可能性。这$1
实际上是我更好理解所需要的。
在记事本++中也可以使用的(非常简单的)模式
Pattern: 'label' => ('.*')
Replace: 'label' => __(\1,'textdomain')
(在记事本++中,它被称为标签区域(不是var),它被标记为\1