0
A
回答
3
不,因为shell删除了那些空格,而不是optparse。 Python传递了一个已经解析过的命令行参数列表。
使用引用保留空间:
./yourscript.py --option=" spaces in here "
为了证明,我创建了下面的脚本:
#!/usr/bin/env python
import sys
print sys.argv
向您展示optparse看到的是:
$ ./demo.py foo bar baz
['./demo.py', 'foo', 'bar', 'baz']
注意如何空白全部被删除,三个值被传递给脚本。但引用:
$ ./demo.py " foo bar" baz
['./demo.py', ' foo bar', 'baz']
保留空白,并且我将两个字符串连接在一起。
1
你的问题缺乏很多的数据,有效地回答这个问题,但也许以下帮助:
如果您无法使用带有空格开头的正则表达式,请尝试使用替换字符表示空格:\s
..因此\s{3}test
将匹配“< 3个空格>测试”。
如果是shell脚本,请记得双重转义它,否则shell将忽略\s
中的s
。因此,正确的版本将会是\\s{3}test
0
命令行在参数到达您的Python程序之前拆分参数。根据你的shell,你可能想用"
或'
封装你的正则表达式。例如,在Bash中,双引号将在$
和`
字符上启用shell扩展,这可能会导致错误。
./match.py --pattern=" something (.*)"
相关问题
- 1. Python 2.7 optparse不读第二旗
- 2. UIPageViewController第二个视图变为空白
- 3. Android无法将数据保存到第二个表中
- 4. C#在第二次点击后不会保存到数据库
- 5. Python成语 - * arg中的空白/ ** kwargs
- 6. 多个jcarousels第二个工作正确第一个滚动到白色空间
- 7. 将文档从MVC网页保存到第二个RavenDb
- 8. Cocos2D:CCLabelTTF不会保留结尾的空白。
- 9. 将第二行后的表结构保存到变量中?
- 10. 空白MFMailComposeViewController第二次出现?
- 11. par(mfcol = c(2,1))和第二行空白
- 12. Optparse库 - 回调动作,同时存储ARG
- 13. 从okHttp保存空白PDF
- 14. 保存空白记录
- 15. UIView渐变不会在第二次保存时更改
- 16. 动画将不会运行,直到第二个循环
- 17. 从SelectMethod保存第二个结果集
- 18. 休眠@ManyToMany不会保存到第三个表
- 19. 其中不存在第二个表
- 20. 将画布保存到DataURL时的空白PNG
- 21. Rails - 将空白添加到textarea的内容保存
- 22. 数据保存为空白CakePHP中
- 23. textarea保存将不会保存breakline
- 24. 如何将UIPickerView的第二行保存到NSUserDefaults?
- 25. 不能保存数据到MySQL(页面按保存按钮后变成空白)
- 26. 第二项活动将不会填充
- 27. jQuery将不会滑出第二次
- 28. Scanf将不会执行第二次
- 29. sqlite3将不会工作第二次
- 30. 在“WHERE @Arg IS NULL OR Name = @ Arg”的情况下,SQL Server总是会经历第二个条件吗?