簡體   English   中英

單詞邊界匹配浮動,后跟可選空格

[英]Word Boundary match float followed by optional space

我正在嘗試匹配一個浮點數,然后是一個可選的空格,然后是一個可以表示如下的符號列表

price of rldtoken
420 rld.token 0.28 btc
42.37 rldtoken to xrp
42.37rldtoken to xmr
cost of rldtoken
10 btc 12.47 rldtoken to xmr
whatisrldtoken
btcc price
btc cost
0.2btc

我目前正在使用此正則表達式

((?:0|[1-9]\d*)?(?:\.\d+)?)\s*\b(rld[\W_]*token|btcc|btc|ark|xmr|xrp)\b

分解為

((?:0|[1-9]\d*)?(?:\.\d+)?) Match float
\s* Match 0 or more spaces
\b(rld[\W_]*token|btcc|btc|ark|xmr|xrp)\b Match words

它將除了42.37rldtoken之外的所有內容都匹配到xrp和0.2btc,我假設這必須對空格和單詞邊界進行處理

如果我刪除了邊界這個詞,它將匹配我不想匹配的whatisrldtoken。

一些如何進行的指示將不勝感激

這里編輯一切

您可以使用tis regex:

(?:(\.\d+|\b\d+(?:\.\d+)?)\s*|\b)(rld[\W_]*token|btcc|btc|ark|xmr|xrp)\b

更新了RegEx演示

要匹配浮點數,更准確的是,以點交替地匹配以點開頭的數字,而不是將兩個部分都保持為可選,這將導致匹配空字符串。

暫無
暫無

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

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