中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ruby 正則表達式

發布時間:2020-10-14 20:31:18 來源:網絡 閱讀:531 作者:thinkalone2 欄目:編程語言

1顯式的正則表達式調用

有兩個對象,一個是模式對象,一個是匹配結果對象

re = /(\d+):(\d+)/
md = re.match("Time: 12:34am")
p md, md[0], md[1], md[2], md[3], md.pre_match, md.post_match

2Perl式的正則表達式調用

這里面隱含了re對象、以及match對象

message = "Time: 12:34am"
message =~ /(\d+):(\d+)/
p $&, $1, $2, $3, $`, $'

3兩個細節

=~表達式是有返回值的,如果不匹配返回nil,匹配則返回第一個字符的位置

message = "Time: 12:34am"
a = (message =~ /(\d+):(\d+)/)
p a

ruby是在match對象和$1這樣的對象之間建立了一座橋梁,即$~

re = /(\d+):(\d+)/
md1 = re.match("Time: 12:34am")
md2 = re.match("Time: 10:30pm")
p $1, $2
$~ = md1
p $1, $2

4測試正則表達式匹配效果的代碼

def show_regexp(a, re)
if a =~ re
"#{$`}<<#{$&}>>#{$'}"
else
"no match"
end
end
p show_regexp("abc\ndef\nghi", /abc/)

5錨點

參考http://fsjoy.blog.51cto.com/318484/68433/

^$是真正意義上行的起始點和結束點

\A\z是真正意義上字符串的起始點和結束點

\Z忽略字符串結束時的那個回車符,但是字符串中間的回車符不忽略

def show_regexp(a, re)
if a =~ re
"#{$`}<<#{$&}>>#{$'}"
else
"no match"
end
end
p show_regexp("hello world
fuck u down
towndown gardon
", /gardon\z/)

http://www.rubular.com/

這個網站測試錨點時回車必須敲出來,而不是用\n,應該是字符串識別的問題。

用show_regexp是直接回車,還是\n效果是一樣的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

修武县| 闽侯县| 十堰市| 循化| 山西省| 白山市| 巴南区| 奇台县| 墨玉县| 盐亭县| 莲花县| 墨江| 伊宁市| 金寨县| 昌吉市| 卫辉市| 股票| 张家界市| 开原市| 略阳县| 法库县| 清新县| 渭南市| 化隆| 安陆市| 紫金县| 太白县| 喀喇| 巍山| 乌拉特后旗| 明水县| 衢州市| 汝州市| 宜丰县| 苏尼特右旗| 嵊泗县| 黎城县| 元阳县| 乐平市| 阿拉善左旗| 本溪|