use*_*807 1 python regex command-line
我正在编写需要在命令行上指定正则表达式的脚本.所以程序应该能够\d+在命令行中使用:
python3 my_script.py \d+
Run Code Online (Sandbox Code Playgroud)
假设my_script.py根据命令行中给出的正则表达式搜索某些文件.
但是当我这样做时,领先者\被剥夺了.所以印刷 sys.argv有['my_script.py', 'd+'].
如何才能在命令行中指定正则表达式?请注意正则表达式不在引号中.它甚至可能吗?
(我使用getopt模块处理我的输入参数)
您应该使用两个反斜杠:
python3 my_script.py \\d+
Run Code Online (Sandbox Code Playgroud)
要么
python3 my_script.py '\d+'
Run Code Online (Sandbox Code Playgroud)
要使字符串文字中的反斜杠得到正确读取,需要对其进行转义或引用.