簡體   English   中英

正則表達式從字符串中查找特定的模式字符串

[英]Regex to find specific pattern string from string

如何從以下字符串獲取ricCode:.ABC 我的匹配者是

Matcher matcher = Pattern.compile("ricCode:([A-Za-z]+),$").matcher(str);

String str = "{AMX:{ricCode:.ABC,indexDetailEnable:true,price:20,648.15,netChange:<spanclass="md-down">-41.09</span>,percentChange:<spanclass="md-down">-0.20%</span>,tradeDate:17/04/05,tradeTime:16:40,chartDate:17/04/05,chartTime:16:40}";

正則表達式中缺少什么?

從此更改您的正則表達式:

ricCode:([A-Za-z]+),$

對此:

ricCode:([A-Za-z.]+)(?=,)

您的原始正則表達式僅允許在ricCode:之后ricCode:字母字符,但是您的示例中有一個點. 字符。 你也被匹配,性格,但是這也將包括在比賽中的逗號,你不希望這樣-所以我增加了一個積極前瞻的逗號,所以它看起來它存在,但並不匹配。 最后,您在正則表達式的末尾有$字符,該字符與字符串的末尾匹配,您不想在逗號后立即查找字符串的末尾,因此我刪除了它。

使用regexr.com可以測試您的表情。

暫無
暫無

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

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