簡體   English   中英

Java 帶特殊字符的正則表達式

[英]Java regular expression with special characters

我在 java ["1234","abd df"] 中有一個文本字符串,我需要在 Java 中編寫一個捕獲兩個元素的正則表達式

第一個元素=1234,第二個元素=abd df

我正在使用以下正則表達式

\\[\\"(.*?)\\",\\".*?\\"\\]

但是上面不能正常工作,實際上這兩個元素都可以是數字或字母,有人可以指導我找到正確的正則表達式字符串嗎?

謝謝

這將分別匹配它們:

"[^"]*"

這將匹配逗號分隔的引號字符串並捕獲引號部分:

"([^"]*)","([^"]*)"

我在 java ["1234","abd df"] 中有一個文本字符串,我需要在 Java 中編寫一個正則表達式來捕獲這兩個元素

第一個元素=1234,第二個元素=abd df

我正在使用以下正則表達式

\\[\\"(.*?)\\",\\".*?\\"\\]

但是上面不能正常工作,實際上這兩個元素都可以是數字或字母,有人可以指導我找到正確的正則表達式字符串嗎?

謝謝

您的正則表達式非常接近。

對其進行了細微改動以表明我可以工作。

你的正則表達式:

\\[\\"(.*?)\\",\\".*?\\"\\]

小改動后:

\\[\"(.*?)\",\"(.*?)\"\\]

上下文中的正則表達式:

public static void main(String[] args) {
    String input = "[\"1234\",\"abd df\"]";

    Matcher matcher = Pattern.compile("\\[\"(.*?)\",\"(.*?)\"\\]").matcher(input);

    if(matcher.find()) {
        System.out.printf("Element 1: '%s'%n", matcher.group(1));
        System.out.printf("Element 2: '%s'%n", matcher.group(2));
    }
}

Output:

Element 1: '1234'
Element 2: 'abd df'

暫無
暫無

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

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