我想這種字符串的分裂:拆分日期! (這是一個字符串實際上)
"14:30 - 19:30" or "14:30-19:30"
JavaScript數組裏面像["14:30", "19:30"]
,所以我有我的變量
var stringa = "14:30 - 19:30";
var stringes = [];
我應該做的正則表達式?我想我需要一個幫助
我想這種字符串的分裂:拆分日期! (這是一個字符串實際上)
"14:30 - 19:30" or "14:30-19:30"
JavaScript數組裏面像["14:30", "19:30"]
,所以我有我的變量
var stringa = "14:30 - 19:30";
var stringes = [];
我應該做的正則表達式?我想我需要一個幫助
你可以用str.split
:對
var stringa = "14:30 - 19:30";
var res = str.split("-");
如果您知道,只有'-'
現在將是分隔符,你可以開始分裂:
let parts = input.split('-');
如果你需要擺脫周圍的空白,你應該修剪每個部分:
parts = parts.map(function (it) { return it.trim(); });
爲了驗證這些部分,你可以使用正則表達式:
parts = parts.filter(function (it) { return /^\d\d:\d\d$/.test(it); });
組合:
var input = "14:30 - 19:30";
var parts = input.split('-').map(function(it) {
return it.trim();
}).filter(function(it) {
return /^\d\d:\d\d$/.test(it);
});
document.getElementById('results').textContent = JSON.stringify(parts);
<pre id="results"></pre>
試試這個:
var stringa = "14:30 - 19:30";
var stringes = stringa.split("-"); // string is "14:30-19:30" this style
or
var stringes = stringa.split(" - "); // if string is "14:30 - 19:30"; style so it includes the spaces also around '-' character.
分割功能打破了基於th的子字符串中的字符串e你輸入的子字符串的位置「 - 」
。第一個根據「 - 」的位置拆分它,第二個包含空格也是「 - 」。
*它看起來更像24小時制時間格式,而不像您在問題中提到的那樣。
.split可能是最好的方法,但您需要先準備字符串。我會去str.replace(/\s*-\s*/g, '-').split('-')
。證明:
var str = "14:30 - 19:30"
var str2 = "14:30-19:30"
console.log(str.replace(/\s*-\s*/g, '-').split('-')) //outputs ["14:30", "19:30"]
console.log(str2 .replace(/\s*-\s*/g, '-').split('-')) //outputs ["14:30", "19:30"]
var stringa = '14:30 - 19:30';
var stringes = stringa.split("-");
你會在你的數組中得到一個空格:應該修剪... –
我只想分裂的儀表板和修剪結果...也許如果您不確定那'stringa'將遵循格式,用正則表達式測試...... – Timigen
'var arr = stringa.split(' - ')。map(function(x){return x.trim()});' – adeneo
adeneo,出於某些原因,總是有內聯的解決方案,大多數不會,大聲笑。 +1 – briosheje