我想确保始终从字符串中提取语言,仅在第二个破折号(-)之前
所以
en-AU-Option-A
成为
en-AU
使用一行Javascript可以做到吗?
答案 0 :(得分:0)
当然可以。这不使用正则表达式。
let mystr = 'en-AU-Option-A'
console.log(mystr.split('-').slice(0, 2).join('-'))
答案 1 :(得分:0)
这是一个正则表达式解决方案
var regex = /^([a-z]+|[A-Z]+)\-([a-z]+|[A-Z]+)/g;
var str = 'en-AU-Option-A';
console.log(str.match(regex)) // ["en-AU"]
答案 2 :(得分:0)
Split使用第二个参数指定否。所需元素。因此,在这种情况下,您可以指定2,它将拆分为第二个-
,然后加入-
let str = `en-AU-Option-A`
console.log(str.split('-',2).join('-'))
答案 3 :(得分:0)
尝试一下:
var patt = /[^-]*-[^-]*/ig ;
console.log( patt.exec( 'en-AU-Option-A' )[0] )