【问题标题】:Python regexp find exact wordPython正则表达式找到确切的单词
【发布时间】:2017-06-27 16:53:26
【问题描述】:

我想从我的单词中删除某些特殊字符和一些像“&quot”这样的垃圾(但我想保留一些特殊字符,如“é”、“á”等)。如何匹配 EXACT 模式 '&quot'(或 'quot',因为我可以单独删除 '&')?

word = re.sub('[,|;|?|!|(|)|{|}|.|&|\bquot\b]+', '', word)

我正在尝试这个,但它会删除所有 'q''u''o''t' 字符。

编辑 按要求测试字符串:

'&quottermészet&quot' should be 'természet'    
'data,' should be 'data'

【问题讨论】:

  • 提供测试字符串和预期输出。

标签: python regex


【解决方案1】:

在方括号内时,您不需要 | 分隔符

试试这个正则表达式

re.sub(r'[,;?!(){}.]|\&quot', '', word)

【讨论】:

  • 我会使用re.sub(r'[,;?!(){}.]+|&quot', '', word),不需要匹配和替换空字符串。
  • 是的,避免匹配空字符串是好的。我会编辑我的答案
【解决方案2】:

你的意思是这样的?

re.sub('&quot', '', "abc&quotdef")

【讨论】:

  • 嗯,是的,但我想知道如何将它添加到整个 '[,|;|?|!|(|)|{|}|.]+' 表达式中。
猜你喜欢
  • 1970-01-01
  • 2017-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-20
  • 1970-01-01
  • 1970-01-01
  • 2022-07-14
相关资源
最近更新 更多