Skip to main content
 首页 » 编程设计

python之寻找包含字母数字 + "&"和 ";"的正则表达式

2025年05月04日22cyq1162

问题是:

split=re.compile('\\W*') 

这个正则表达式在处理常规单词时效果很好,但有时我需要表达式包含像 käyttäj&aml;auml; 这样的单词。

我应该向正则表达式添加什么以包含 & 和 ; 字符?

请您参考如下方法:

我会将实体视为一个单元(因为它们也可以包含数字字符代码),从而产生以下正则表达式:

(\w|&(#(x[0-9a-fA-F]+|[0-9]+)|[a-z]+);)+ 

这个匹配

  • 要么是一个单词字符(包括“_”),要么
  • 一个 HTML 实体,包含
    • 字符“&”,
      • 字符“#”,
        • 字符“x”后跟至少一个十六进制数字,或者
        • 至少一位小数,或
      • 至少一个字母(=命名实体),
    • 分号
  • 至少一次。

/编辑:感谢 ΤZΩΤZΙΟΥ 指出错误。