国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 > Java > java教程 > 正文

Java正則表達式和方法怎么定義使用

PHPz
發(fā)布: 2023-04-18 13:16:03
轉(zhuǎn)載
1148人瀏覽過

1.正則表達式:

a.定義:

正則表達式定義了字符串的模式。

正則表達式可以用來搜索、編輯或處理文本。

正則表達式并不僅限于某一種語言,但是在每種語言中有細微的差別。

在Java,一個字符串其實就是一個簡單的正則表達式,例如?Hello World?正則表達式匹配 "Hello World" 字符串。

ava.util.regex 包主要包括以下三個類:

1.Pattern類:pattern對象是一個正則表達式的編譯表示。Pattern 類沒有公共構(gòu)造方法。

要創(chuàng)建一個 Pattern 對象,你必須首先調(diào)用其公共靜態(tài)編譯方法,它返回一個 Pattern 對象。該方法接受一個正則表達式作為它的第一個參數(shù)。

2.Matcher類:Matcher 對象是對輸入字符串進行解釋和匹配操作的引擎。與Pattern 類一樣,Matcher 也沒有公共構(gòu)造方法。

你需要調(diào)用 Pattern 對象的 matcher 方法來獲得一個 Matcher 對象。

3.PatternSyntaxException:PatternSyntaxException 是一個非強制異常類,它表示一個正則表達式模式中的語法錯誤。

b.捕獲組:

?捕獲組是把多個字符當一個單獨單元進行處理的方法,它通過對括號內(nèi)的字符分組來創(chuàng)建,我們來看一下以下代碼。

String?line?=?"This order was placed for QT3000! OK?";? ? ?//輸入

String?pattern?=?"(\D*)(\d+)(.*)";? ? ? ? ? ? //我們的三個捕獲組

由于我們有三個(),所以最后會形成三個組,根據(jù)上面的正則表達式可得知結(jié)果為:

This order was placed for QT

3000

! OK?

需要注意的是假如你使用的是Matcher對象,那group(0)將會是原string(整個string)。

在實際的開發(fā)中,為了方便我們很少直接使用Pattern類或Matcher類,而是使用String類下的方法

驗證:boolean matches(String regex)

拆分: String[] split(String regex)

替換: String replaceAll(String regex, String replacement)

c.語法:

在其他語言中,\?表示:我想要在正則表達式中插入一個普通的(字面上的)反斜杠,請不要給它任何特殊的意義。

在 Java 中,\?表示:我要插入一個正則表達式的反斜線,所以其后的字符具有特殊的意義。

所以,在其他的語言中(如Perl),一個反斜杠??就足以具有轉(zhuǎn)義的作用,而在 Java 中正則表達式中則需要有兩個反斜杠才能被解析為其他語言中的轉(zhuǎn)義作用。也可以簡單的理解在 Java 的正則表達式中,兩個?\?代表其他語言中的一個?,這也就是為什么表示一位數(shù)字的正則表達式是?\d,而表示一個普通的反斜杠是?\\。

?2.Java方法:

?Java是一門面對對象的語言,所以說沒有函數(shù)只有方法,但是大體上函數(shù)和方法應用差不多。

a.定義:

修飾符 返回值類型 方法名(參數(shù)類型 參數(shù)名)

{

...

方法體

...

return?返回值;

}

我們來看一個實際的例子,這個方法返回兩個參數(shù)最大值:

public?static?int?max(int?num1,?int?num2)?{

int?result;

if?(num1?>?num2)

result?=?num1;

else

result?=?num2;

return?result;

}

跟函數(shù)基本上差不多,不過注意的是JAVA都是一個個對象,所以說要注意哪個方法在哪個類里。

b.Java的特性:

Java跟C++一樣支持函數(shù)重載。

Java支持傳遞同類型的可變參數(shù)給一個方法:

printMax(34,?3,?3,?2,?56.5);

printMax(new?double[]{1,?2,?3});

以上就是Java正則表達式和方法怎么定義使用的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!

java速學教程(入門到精通)
java速學教程(入門到精通)

java怎么學習?java怎么入門?java在哪學?java怎么學才快?不用擔心,這里為大家提供了java速學教程(入門到精通),有需要的小伙伴保存下載就能學習啦!

下載
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權(quán)歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn
最新問題
開源免費商場系統(tǒng)廣告
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
關(guān)于我們 免責申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓,幫助PHP學習者快速成長!
關(guān)注服務(wù)號 技術(shù)交流群
PHP中文網(wǎng)訂閱號
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時隨地碎片化學習
PHP中文網(wǎng)抖音號
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://www.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號