国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JavaScript拆分字符串時產(chǎn)生空字符的解決方案

2019-11-20 14:05:55
字體:
供稿:網(wǎng)友

問題描述

使用JavaScript的split方法拆分字符串時出現(xiàn)一些空字符串"",尤其是當(dāng)使用正則表達式作為分隔符的時候。

相關(guān)問題

javascript正則表達式對字符串分組時產(chǎn)生空字符串組?

在上面這個問題中,題主使用正則表達式對字符串進行分割時產(chǎn)生了多個空字符串"",代碼如下:

復(fù)制代碼 代碼如下:

'張sdf四上法asdf翁芬aa33網(wǎng)s'.split(/([/u4e00-/u9fa5]{1})/gi);
//輸出["", "張", "sdf", "四", "", "上", "", "法", "asdf", "翁", "", "芬", "aa33", "網(wǎng)", "s"]

 那么,產(chǎn)生這些空字符串的原因是什么?

問題分析

在Google上搜索了一番,發(fā)現(xiàn)相關(guān)的結(jié)果并不多,即便有,詳細解釋的也不多,大概的說了一下,然后就給出了一個ECMAScript規(guī)范的鏈接。看來要想知道真正的原因,就只能硬著頭皮看規(guī)范了。

相關(guān)標(biāo)準

那么,接下來,按照國際慣例,先上ECMAScript的標(biāo)準鎮(zhèn)樓。

復(fù)制代碼 代碼如下:

String.prototype.split (separator, limit)

這個章節(jié)詳細介紹了split方法的執(zhí)行步驟,如果感興趣的話可以一步一步的認真看完,我在這里只把和產(chǎn)生空字符串相關(guān)的步驟拿出來解釋一下,不當(dāng)之處,歡迎大家提出。

相關(guān)步驟

摘取部分步驟:

整個過程中最主要的步驟是第13步這個循環(huán),而這個循環(huán)主要做的事情如下:
 •定義p, q的值,每一次循環(huán)開始的時候p和q的值是相同的(該步驟在循環(huán)之外);
 •調(diào)用SplitMatch(S, q, R)這個方法對字符串進行拆分;
 •根據(jù)返回結(jié)果的不同,執(zhí)行不同的分支,主要分支為分支

主站蜘蛛池模板: 绿春县| 泾源县| 探索| 南和县| 孟州市| 化德县| 民县| 岳池县| 昌黎县| 廉江市| 昌都县| 敖汉旗| 兰西县| 西宁市| 黔西县| 大新县| 安阳县| 伊通| 隆子县| 府谷县| 宜兴市| 光泽县| 四子王旗| 万荣县| 合作市| 忻州市| 益阳市| 稻城县| 东港市| 苏尼特左旗| 桦南县| 齐河县| 广南县| 卫辉市| 什邡市| 河曲县| 赤壁市| 南部县| 昌平区| 通辽市| 崇州市|