去掉首位空格
js正則表達式刪除字符串前后空格
String.prototype.trim=function(){var reSpace=/^/s*(.*?)/s*$/;return this.replace(reSpace,”$1″);};
讓我們分析一下第二行的正則表達式
^ 行開始
/s*
匹配字符前面的所有空格,貪婪模式重復
(.*?)
捕獲組,勉強模式重復匹配任意字符,也就是我們最終需要(去掉前后空格后)的字符,這個不是很好理解(我認為)
第一:我原來認為在捕獲組內也應該判斷第一個字符應該不能為空格即寫成([^/s+])的形式,但這是完全沒有必要的因為捕獲組前面的/s*已經能捕獲開頭的所有的空格字符了,你認為的捕獲組的字符開始范圍與正則表達式匹配的字符范圍是不一樣的,汗~有點說不清楚了,呵呵
第二:其中?的作用,他的作用就是勉強模式重復前面的字符,什么意思呢?就是如果我用(.*a)去匹配aaaaaaa字符串的結果就是(aaaaaaa)源字符串這叫貪婪模式,如果用(.*?a)去匹配aaaaaaa的話他就會先匹配第一a,然后是第二個a,然后是第三個a…….這就叫勉強模式匹配有的地方也叫懶惰模式匹配。通俗一點(大家都喜歡通俗的解釋,呵呵)就是前者是從后往前去匹配盡可能多的字符,而后者是從前往后匹配
第三:我們還要不要去關心捕獲組中后面的空格呢?因為捕獲組中的”.”也是可以匹配空格的,先前我也是考慮這個問題大部分時間都浪費在這上面了.其實這和考慮要不要排除捕獲組前面的空格一樣的道理,后面的/s*已經給我們處理了
/s*匹配字符后面的空格
―――――――――――――――――――分割線―――――――――――――――――― 主站蜘蛛池模板: 精品亚洲网 | 亚洲一区二区三区在线 | 中文字幕在线资源 | 久久免费国产精品 | 中文字幕在线免费观看 | 亚洲人成电影网 | 日韩精品一区二区三区 | a在线观看 | 日本特黄a级高清免费大片 综合一区二区三区 | 久久久久99 | 日韩欧美中文国 | 91中文字幕在线观看 | 亚洲精品日韩综合观看成人91 | 国内久久精品 | 四虎视频在线精品免费网址 | 精品一区二区久久久久久久网站 | 中文字幕亚洲一区二区三区 | 操视频网站 | 精品欧美一区二区三区 | 黄色片在线免费观看 | 啪啪免费网站 | 免费黄色福利网站 | 亚洲福利免费 | 国产精品嫩草33av在线 | 日本三级黄色录像 | 国产欧美综合一区二区三区 | 国产激情久久久久久 | 日韩免费网站 | 国产一级在线观看 | 四季久久免费一区二区三区四区 | 超碰人人爽 | 中文字幕成人在线视频 | 亚洲视频在线观看网址 | 国产拍拍视频 | 日韩成人精品视频在线观看 | www.mm131.com| 黄色a视频 | 中文视频在线 | 噜噜噜天天躁狠狠躁夜夜精品 | 国产一级淫免费播放m | 免费黄色激情视频 |