正則運算式 - daniel-qa/Vue GitHub Wiki
正則運算式
- EX : 把字串切割成陣列
這是一個 正則表達式,用來把字串切割成陣列:
// 處理各種分隔符:空格、逗號、Tab、換行
const formatInput = () => {
const splitIds = teacherIdsInputRaw.value
.split(/[\s,]+/) // 空格 \s 包含空格、Tab、換行,+ 表示可連續多個
.filter(id => id.trim()) // 去掉空白與空值
teacherIdsInputRaw.value = splitIds.join('\n')
}
/[\s,]+/ 是一個 字元集合 + 數量修飾子 的組合。
.split(...) 是 JavaScript 的字串切割方法。
"123,456\t789\n101".split(/[\s,]+/)
// 結果: ["123", "456", "789", "101"]
正則表達式 | 說明 |
---|---|
/\s+/ |
只切空白、Tab、換行 |
/[,]+/ |
只切逗號 |
/[\s,]+/ |
切空白 + Tab + 換行 + 逗號(這個最萬用 👍) |
/.../:用來包住正則的「內容本體」
+
是一個常見的量詞(quantifier),表示「前一個元素出現一次或多次」,也就是「至少出現一次」的意思。
這個符號的作用是讓你可以匹配一個或多個連續出現的特定模式。
.split(/[ \t,]+/)
// 僅分割空格、Tab 和逗號