作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 .vimrc 文件,其中包含以下行:
syntax match proper /\s[A-Z][a-zA-Z]*/
理论上,它应该匹配任何以空格为前缀并以大写字母开头的字母字符集。当我在 Ubuntu 11.11 上使用 vim 7.3 运行它时,它应该可以正常工作。但是,当我将 .vimrc 发送到在 CentOS 5.6 上运行 vim 7.0 的服务器时,它匹配所有以空格为前缀的单词,而不仅仅是以大写字母开头的单词。
我已经搜索了几个小时来解决这个问题,但我很困惑。我试过[[:upper:]]
而不是[A-Z]
但它得出了相同的结果。使用/[A-Z]
和/[[:upper:]]
正确搜索仅选择大写字符。运行ls | grep "[A-Z]"
在 bash 中仅突出显示带有大写字符的文件。
最佳答案
我的下一个最佳猜测(在ignorecase之后)将是语法突出显示脚本本身的配置错误:
有些语言不区分大小写,例如 Pascal。其他的,比如C,区分大小写。您需要通过以下方式判断您的类型命令:
:syntax case match
:syntax case ignore
你能尝试一下当你专门添加 :syntax case match
到混合中时会发生什么(或者找出虚假的 ignore
的来源)吗?
关于regex - vim 语法匹配错误([A-Z] 匹配所有字母字符),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8548662/
我是一名优秀的程序员,十分优秀!