gpt4 book ai didi

javascript - 需要使用正则表达式将大学类(class)代码拆分为前缀和后缀

转载 作者:行者123 更新时间:2023-11-30 11:41:45 25 4
gpt4 key购买 nike

我需要将大学类(class)代码拆分为前缀和后缀。例如CSE1011 变成前缀 CSE 和后缀 1011 。前缀可以是 2 个或更多字母,后缀可以是无/3 个或更多。到目前为止,我想出了这个正则表达式:

/([A-Z]{2,})(?:\s*)([0-9]{3,})?$/g

var courscrCode = 'CSE1011';
var courseRegex = /([A-Z]{2,})(?:\s*)([0-9]{3,})?$/g;
var splitted = courseRegex.exec(courscrCode);
console.log(splitted);

也试过这个。我越来越匹配

var courscrCode = 'CSE1011';
var courseRegex = /([A-Z]{2,})(?:\s*)([0-9]{3,})?$/g;

if (courscrCode.match(courseRegex)) {
var splitted = courscrCode.split(courseRegex);
console.log(splitted.length);
if (splitted.length > 1) {
splitted.forEach(function(value, index) {
if ((value != '') && (value != undefined))
console.log(value, index);
});
}
} else {
console.log('course code mangled');
}

我需要一个解决方案,我将准确获得 2 个子字符串前缀和后缀。现在我得到的不仅仅是 2。我也对任何其他解决方案持开放态度

最佳答案

正如 Terry 上面提到的,MDN 指出正则表达式返回的数组将始终包含匹配的文本作为第一项。下面的代码将删除第一个元素。

var courscrCode = 'CSE1011';
var courseRegex = /([A-Z]{2,})(?:\s*)([0-9]{3,})?$/g;
var splitted = courseRegex.exec(courscrCode);
splitted.splice(0,1);
console.log(splitted);

关于javascript - 需要使用正则表达式将大学类(class)代码拆分为前缀和后缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42401508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com