正则表达式从文本中删除所有引用部分?

时间:2018-12-13 18:43:47

标签: regex macos komodoedit

我有一个电影剧本,我需要删除所有引号,因此要删除人们在说些什么的部分,例如:“马丁:”。 有人知道我应该使用哪个正则表达式吗?

我正在使用脚本语言Perl。 因此,我输入的内容是完整的电影作品。 我想要的输出是该电影脚本,但没有人们说话的部分。 所以“马丁:我饿了。”应该变成“我饿了”。

我在查找栏中尝试了“ \ w + \ b:”,但是选择了所有带有:的实例。我尝试使用^标记行的开头,但给出了错误。

Hower名称并不总是单个名称。例如,他们也可以是“童军领袖”或“#1小子”。

2 个答案:

答案 0 :(得分:1)

您可以尝试

^"[\w\s\d#]+:\s*
  

说明

^-匹配字符串的开头。

"[a-zA-Z][\w\s\d#]+:-匹配",后跟一个或多个字母,空格或数字,或#,后跟:

-\s*-匹配零个或多个空格字符。

here

答案 1 :(得分:0)

如果名称从不包含:,则可以将其从搜索中排除(基于@ code-maniac的答案):

^"[^:]+:\s*

Demo

[^:]与所有非:的字符匹配。您可以在[]之间包含任何您不想匹配的字符。