我想拆分这种字符串:
"14:30 - 19:30" or "14:30-19:30"
在像["14:30", "19:30"]
所以我有我的变量
var stringa = "14:30 - 19:30";
var stringes = [];
我应该用正则表达式吗?我想我需要帮助
答案 0 :(得分:2)
您可以使用private IList<MeterReadingDto> _meterReadings;
private IList<PseudoReadingDto> _pseudoReading;
public IList<MeterReadingDto> MeterReadings
{
get
{
return _meterReadings != null ? _meterReadings.OrderByDescending(x => x.ReadDate).ToList() : null;
}
set { _meterReadings = value; }
}
public IList<PseudoReadingDto> PseudoReadings
{
get
{
return _pseudoReading != null ? _pseudoReading.OrderByDescending(x => x.ReadDate).ToList() : null;
}
set { _pseudoReading = value; }
}
:
str.split
答案 1 :(得分:2)
如果您知道唯一存在的'-'
将是分隔符,您可以先分开:
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);
&#13;
<pre id="results"></pre>
&#13;
答案 2 :(得分:1)
试试这个:
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.
split函数根据你在其中输入的子字符串的位置打破子字符串中的字符串&#34; - &#34;
。第一个根据&#34; - &#34;的位置拆分它。第二个也包括空格&#34; - &#34;。
*它看起来更像24小时时间格式而不是您在问题中提到的数据。
答案 3 :(得分:1)
var stringa = '14:30 - 19:30';
var stringes = stringa.split("-");
答案 4 :(得分:0)
.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"]
答案 5 :(得分:0)