如何匹配所有字母数字字符和下划线、加号、减号和小数点?

2024-10-02 08:28:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用一个来自计算机的字符串来创建文件夹和文件名。这台机器是晶圆探针。文件夹和文件可以出现在Windows和Linux操作系统上。 如何删除Python中除+、-、、\和所有带有正则表达式的字母数字字符以外的所有字符?到目前为止,我得到以下。但它不包含.,-或+。你知道吗

>>> re.sub(r'[\W]+', '', ':LOT002_Temp<3.00000E+01>')
'LOT002_Temp300000E01'

我希望答案如下:

'LOT002_Temp3.00000E+01'

感谢您的帮助。你知道吗


Tags: 文件字符串re文件夹机器文件名linuxwindows
2条回答

可以使用基于否定的字符类:

re.sub(r'[^\w.+-]+', '', ':LOT002_Temp<3.00000E+01>')
'LOT002_Temp3.00000E+01'

[^\w.+-]将匹配任何非+-.的非单词字符。你知道吗

使用http://rubular.com/它们非常适合正则表达式的原型化

$ python
>>> import re
>>> re.sub(r'[^\w\+\.]+' , '', ':LOT002_Temp<3.00000E+01>')
'LOT002_Temp3.00000E+01'

相关问题 更多 >

    热门问题