问题
我有这种形式的字符串: -
str1/str2
str3/str4/str5
可以有任意数量的细分。我想进行正则表达式搜索并替换以获得输出: -
str1/str2 , str1->str2
str3/str4/str5 , str3->str4->str5
我的字符串实际上采用[a-z|_]+
我的尝试
符合: -
((?:(?:[a-z|_])\/?)+)
替换为: -
$1 , $1
这几乎是正确的,但我需要进行第二次搜索并替换以将/
更改为->
。
我可以通过一个正则表达式实现这一目标吗?或者它取决于我使用的引擎和它的反向引用功能? (我在aptana中使用搜索和替换功能)。
答案 0 :(得分:2)
Aptana不支持重复组而是支持全局修饰符吗?这适用于JavaScript:
"str3/str4/str5/str6/str7".replace(/([a-z0-9_|]+)\//g, '$1->');
//output: str_3->str_4->str_5->str_6->str_7
另外,我想你的意思是你的模式也应该允许数字。