Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如何使用perl正则表达式从特定字符串的整行中删除特定字符?_Regex_Perl - Fatal编程技术网

Regex 如何使用perl正则表达式从特定字符串的整行中删除特定字符?

Regex 如何使用perl正则表达式从特定字符串的整行中删除特定字符?,regex,perl,Regex,Perl,从这个字符串模式: "test A dkdkd荴kdklsl skldsls荴lksdkdk skdkd荴kdkls"; 我正在尝试删除此角色荴 从整排 我尝试了这个解决方案,但它只删除了荴 在行的末尾,而不是在同一行中包含多个匹配项时: $removeU8374 =~ s/^(test A .*)\N{U+8374}/$1/; 我甚至尝试过这个,但仍然只删除了其中一个事件,而没有删除所有事件荴 整行中的字符: $removeU8374 =~ s/^(test A .*)\

从这个字符串模式:

  "test A dkdkd荴kdklsl skldsls荴lksdkdk skdkd荴kdkls";
我正在尝试删除此角色荴 从整排

我尝试了这个解决方案,但它只删除了荴 在行的末尾,而不是在同一行中包含多个匹配项时:

   $removeU8374 =~ s/^(test A .*)\N{U+8374}/$1/; 
我甚至尝试过这个,但仍然只删除了其中一个事件,而没有删除所有事件荴 整行中的字符:

   $removeU8374 =~ s/^(test A .*)\N{U+8374}/$1/g;

如果您想在任何地方删除它,请忽略替换中字符串的其余部分,例如

$removeU8374 =~ s/\N{U+8374}//g;

否则,您可以循环替换,直到它不再匹配。

如果您想在任何地方删除它,请忽略替换中的其余字符串,例如

$removeU8374 =~ s/\N{U+8374}//g;

否则,您可以循环替换,直到它不再匹配。

如果这是唯一的解决方案,那么谢谢。我只需要添加一个if语句来标识我想要的行,然后删除它。如果这是唯一的解决方案,那就好了。我只需要添加一个if语句来标识我想要的行,然后删除它。