是否在正则语句中使用':'(0x3A)字符?

Use the #39;:#39; (0x3A) character in a Regex sentence?(是否在正则语句中使用#39;:#39;(0x3A)字符?)

本文介绍了是否在正则语句中使用':'(0x3A)字符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

否,这不是The ':' character, hexadecimal value 0x3A, cannot be included in a name

的副本

我有一个Regex用于我的语法高亮笔和我的脚本语言:

`@"Class+(?<range>w+?)"` 

主要标记类名称

(使用我在线的引擎)

我不精通Regex,但由于某些原因,使用我的语言创建标签的:字符不起作用。

我试过

 @":+(?<range>w+?)"`, `@":+(?<range>w+?)"`<RB> `@"(x3A)+(?<range>w+?)"

但它拒绝工作!

有什么想法吗?

推荐答案

我怀疑您的问题不是:本身,而是它之前的标记单词字符和非单词字符之间的边界,但Class由单词字符组成,:是非单词字符。因此,:的行为与对Class的行为不同,因此:

`Class` matches " Class Name"
`:` does not match " : Name"

如果您使用原始表达式,但将第一个替换为(?<!w),它可能会正确识别:

这篇关于是否在正则语句中使用&#39;:&#39;(0x3A)字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!


本文标题为:是否在正则语句中使用&#39;:&#39;(0x3A)字符?