You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何创建正则表达式:匹配符号且排除字母、数字、点与换行?

正则表达式匹配指定符号的解决方案
  • 用否定字符类就能精准实现需求,Python re模块完全支持这个写法。你需要匹配的是「非字母、非数字、非点、非换行符」的字符,直接写:[^\w.\n]
    • 拆解说明:\w 等价于 [a-zA-Z0-9_],匹配字母、数字和下划线;字符类开头的^表示取反,所以这个表达式会排除掉所有字母、数字、下划线、点和换行符,只匹配剩下的符号。
  • 你之前用的\D\W逻辑不对,\D是匹配单个非数字字符,\W是匹配单个非单词字符,连在一起是匹配两个连续字符,不是单个符合要求的字符,这就是你之前碰壁的原因。
  • 附Python测试代码:
    import re
    
    test_content = "Test!@#$ 456. \nAnother_line?"
    result = re.findall(r'[^\w.\n]', test_content)
    print(result)  # 输出:['!', '@', '#', '$', ' ', '?']
    
  • 如果需要排除下划线(因为\w包含下划线),把表达式改成[^a-zA-Z0-9.\n]即可,这样就彻底过滤掉字母、数字、点和换行符,只保留其他符号。

内容的提问来源于stack exchange,提问作者mathis_dukatz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 20:50:55