使用regex删除通过以下逗号与子字符串开头匹配的子字符串

iyr7buue  于 2023-01-14  发布在  其他
关注(0)|答案(1)|浏览(134)

我还没有找到任何有用的正则表达式工具来帮助我找出这个复杂的模式。
我有以下字符串:

Myfirstname Mylastname, Department of Mydepartment, Mytitle, The University of Me; 4-1-1, Hong,Bunk, Tokyo 113-8655, Japan E-mail:my.email@example.jp, Tel:00-00-222-1171,  Fax:00-00-225-3386

我正在尝试学习足够的正则表达式模式,以便一次删除一个子字符串:
E-mail:my.email@example.jp
Tel:00-00-222-1171
Fax:00-00-225-3386
因此,我认为正确的模式应该是删除给定的单词(例如,“E-mail”、“Tel”),直到后面的逗号。

动态模式类型是否可以在Regex中使用?

我在Python中执行匹配,但是,我不认为这有多大关系。
另外,我知道数据串看起来是逗号分隔的,事实也确实如此。但是不能保证保持这些字段的顺序。这就是为什么我尝试使用正则表达式匹配。

1hdlvixo

1hdlvixo1#

这个正则表达式怎么样:

<YOUR_WORD>.*?(?=(,|($)))

说明:

  • 它查找<YOUR_WORD>占位符中指定的单词
  • 它会寻找任何类型的人物
  • 搜索在遇到以下两个选项之一时停止:
  • 它会找到字符,
  • 它找到了这条线的终点

因此:

E-mail.*?(?=(,|($)))

将导致:

E-mail:my.email@example.jp

还有

Fax.*?(?=(,|($)))

将导致:

Fax:00-00-225-3386

如果有边缘情况,它错过了-我想知道,以及它是否影响性能/是必要的。

相关问题