我的字符串输入类似于
输入 text:string =“今天午餐200 #hotelname”
输出 主题:“今天午餐” 价格:200 tag:#hotelname
我的解决方案是
text: string = "today lunch 200 #hotelname"
tag: string;
price: string;
subject: string;
this.text.forEach(x => {
if(this.reg.test(x)){
this.tag= x;
}else if(parseInt(x)){
this.price = x;
}
else{
this.subject= x;
}
});
console.log(this.subject, this.tag, this.price);
但问题是我的解决方案不满足所有测试用例是否有更好的解决方案使用打字稿或在javascript中
测试用例
答案 0 :(得分:1)
使用match
:
let string = "today lunch 200 #hotelname";
console.log(string.match(/(.*)\s+(\d+)\s+(#.*)/))