成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

JDK 7中將支持正則表達(dá)式命名捕獲組

開發(fā) 后端
目前Java的正則表達(dá)式不支持命名捕獲組功能,只能通過捕獲組的計(jì)數(shù)來訪問捕獲組.當(dāng)正則表達(dá)式比較復(fù)雜的時(shí)候,里面含有大量的捕獲組和非捕獲組,通過從左至右數(shù)括號(hào)來得知捕獲組的計(jì)數(shù)也是一件很煩人的事情.

目前Java的正則表達(dá)式不支持命名捕獲組功能,只能通過捕獲組的計(jì)數(shù)來訪問捕獲組.當(dāng)正則表達(dá)式比較復(fù)雜的時(shí)候,里面含有大量的捕獲組和非捕獲組,通過從左至右數(shù)括號(hào)來得知捕獲組的計(jì)數(shù)也是一件很煩人的事情;而且這樣做代碼的可讀性也不好,當(dāng)正則表達(dá)式需要修改的時(shí)候也會(huì)改變里面捕獲組的計(jì)數(shù)。

解決這個(gè)問題的方法是通過給捕獲組命名來解決,就像Python, PHP, .Net 以及Perl這些語言里的正則表達(dá)式一樣.這個(gè)特性Javaer已經(jīng)期待了很多年,而現(xiàn)在我們終于在JDK7 b50得到了實(shí)現(xiàn).

新引入的命名捕獲組支持如下:

(1) (?X) to define a named group NAME"

(2) \k to backref a named group "NAME"

(3) <$ to reference to captured group in matcher's replacement str

(4) group(String NAME) to return the captured input subsequence by the given "named group"

現(xiàn)在你可以像這樣使用正則式:

1 String pStr = "0x(?\\p{XDigit}{1,4})\\s++u\\+(?\\p{XDigit}{4})(?:\\s++)?";
2
3   Matcher m = Pattern.compile(pStr).matcher(INPUTTEXT);
4
5   if (m.matches()) {
6
7   int bs = Integer.valueOf(m.group("bytes"), 16);
8
9   int c = Integer.valueOf(m.group("char"), 16);
10
11   System.out.printf("[%x] -> [%04x]%n", bs, c);
12
13   }
14
15   String pStr = "0x(?\\p{XDigit}{1,4})\\s++u\\+(?\\p{XDigit}{4})(?:\\s++)?";
16
17   Matcher m = Pattern.compile(pStr).matcher(INPUTTEXT);
18
19   if (m.matches()) {
20
21   int bs = Integer.valueOf(m.group("bytes"), 16);
22
23   int c = Integer.valueOf(m.group("char"), 16);
24
25   System.out.printf("[%x] -> [%04x]%n", bs, c);
26
27   }

或者

1 System.out.println("0x1234 u+5678".replaceFirst(pStr, "u+$ 0x$"));

【編輯推薦】

  1. Java多線程編程基礎(chǔ)之線程和多線程
  2. Java代碼的靜態(tài)編譯和動(dòng)態(tài)編譯中的問題比較
  3. 成為Java高手的25個(gè)學(xué)習(xí)要點(diǎn)
責(zé)任編輯:彭凡 來源: Javaeye
相關(guān)推薦

2009-07-07 13:18:28

JDK7

2009-09-16 18:19:34

正則表達(dá)式組

2009-08-20 13:44:07

C#正則表達(dá)式

2020-09-04 09:16:04

Python正則表達(dá)式虛擬機(jī)

2018-09-27 15:25:08

正則表達(dá)式前端

2024-09-14 09:18:14

Python正則表達(dá)式

2016-11-10 16:21:22

Java 正則表達(dá)式

2009-09-16 17:15:57

正則表達(dá)式引擎

2022-01-04 11:35:03

Linux Shel正則表達(dá)式Linux

2023-09-13 08:12:45

2009-06-15 17:24:59

Groovy正則表達(dá)式

2020-11-04 09:23:57

Python

2009-09-16 13:14:10

Ereg正則表達(dá)式

2011-08-23 17:46:09

LUA正則表達(dá)式模式

2022-03-28 06:19:14

正則表達(dá)式開發(fā)

2009-02-18 09:48:20

正則表達(dá)式Java教程

2019-07-17 15:45:47

正則表達(dá)式字符串前端

2021-01-27 11:34:19

Python正則表達(dá)式字符串

2011-06-02 12:34:16

正則表達(dá)式

2017-05-12 10:47:45

Linux正則表達(dá)式程序基礎(chǔ)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲欧美视频一区二区 | 999久久久国产精品 欧美成人h版在线观看 | 欧美国产一区二区三区 | 亚洲国产自产 | 91影库| 很很干很很日 | 你懂的免费在线 | 成人精品视频 | 欧美一区二区三区 | 欧美日韩不卡合集视频 | 岛国av免费看 | 国产精品日韩欧美一区二区三区 | 国产精品久久9 | 免费看a | 狠狠色狠狠色综合系列 | 日本久久精品 | 毛片在线视频 | 国产精品福利在线观看 | 国产一区 | 青青青伊人| 毛片站 | 日本人做爰大片免费观看一老师 | 中文字幕免费在线 | 久久国产精品一区二区三区 | 日韩成人精品在线观看 | 国产人免费人成免费视频 | 99在线免费视频 | 国内精品久久久久 | 综合久久av | 国产精品久久久久久久久久久免费看 | 男女视频91 | 免费一级网站 | 精品国产一区二区三区性色av | 三级黄色网址 | 国产高清视频一区二区 | 干干干操操操 | 狠狠亚洲 | 免费观看成人性生生活片 | 中文字幕国产日韩 | 亚洲欧美一区二区三区国产精品 | 天天干b|