簡體   English   中英

在正則表達式中使用':'(0x3A)字符?

[英]Use the ':' (0x3A) character in a Regex sentence?

不,這不是':'字符的副本,十六進制值0x3A,不能包含在名稱中

我的腳本語言語法熒光筆有一個正則表達式:

`@"\bClass+(?<range>\w+?)\b"` 

基本上標記了類

(使用我上線的引擎)

我不是Regex的管理員,但由於某種原因,使用我的語言創建標簽的:字符不起作用。

我試過了

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

而且它拒絕工作!

有任何想法嗎?

我懷疑您遇到的問題不是:本身,而是它前面的\\b \\b標記單詞字符和非單詞字符之間的邊界,但是雖然Class由單詞字符組成,但:是一個非單詞字符。 所以, \\b是表現不同的:比它的Class ,所以:

`\bClass` matches " Class Name"
`\b:` does not match " : Name"

如果使用原始表達式,但用(?<!\\w)替換第一個\\b ,則它可能會正確標識:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM