仅将正则表达式替换应用于带引号的部分
|
我需要应用正则表达式过滤以仅影响引号内的文本内容,而我感到困惑。
$in = \'ab c \"d e f\" g h \"i j\" k l\';
#...?
$inquotes =~ s/\\s+/_/g; #arbitrary regexp working only on the pieces inside quote marks
#...?
$out = \'ab c \"d_e_f\" g h \"i_j\" k l\';
(如果这样更容易,最终效果可以删除/删除引号,\'ab c d_e_f g
...)
没有找到相关结果
已邀请:
3 个回复
联海
(您说过\'s可能会被删除:)) HTH, 保罗
迪擅哨乘傅
和
。使用引号作为字段分隔符,对其他所有字段进行操作:
掏得透垦滩
应该与引用的块匹配。我的perl regex语法有些生疏,但不应该只是将引号文字放在要捕获的内容周围吗?然后,在第一个捕获组中添加了带引号的字符串first7ѭ,因此您可以执行任何操作...您要对带引号的字符串执行哪种“任意操作”? 嗯 您最好匹配带引号的字符串,然后将它们传递给另一个正则表达式,而不是全部合而为一。