Javascript 排序字段的正则表达式

Javascript 排序字段的正则表达式,javascript,regex,Javascript,Regex,我已经创建了一个javascript排序函数来按标题对文章列表进行排序。我将把所有可排序的单词转换成大写字母,这样我就不必处理与小写和大写相关的差异。我在创建一个表达式时遇到了困难,尽管它会清除单词前面所有不是[A-Z]的字符。我对正则表达式不是很熟悉,如果有任何帮助,我将不胜感激。我在找这样的东西 function cleanup(e) { // delete leading not alphanum characters // capitalize for sorting // str.r

我已经创建了一个javascript排序函数来按标题对文章列表进行排序。我将把所有可排序的单词转换成大写字母,这样我就不必处理与小写和大写相关的差异。我在创建一个表达式时遇到了困难,尽管它会清除单词前面所有不是[A-Z]的字符。我对正则表达式不是很熟悉,如果有任何帮助,我将不胜感激。我在找这样的东西

function cleanup(e) {
// delete leading not alphanum characters
// capitalize for sorting
//  str.replace(/^\s*/, '').replace(/\s*$/, ''); 
return(e);
}

如果使用
i
分隔符,正则表达式将不区分大小写,您可以在比较单词时使用此分隔符

试试这个

将替换文本前的所有非a-zA-Z字符:

var str = "#$DSFfd#_)#$$";

alert(str.replace(/[^a-z]+/i, ""))
如果要删除所有非a-zA-Z字符,请执行以下操作(添加了
g
分隔符,表示全局):

大写第一字符

var str = "#$abcd#_)#$$";
str = str.replace(/[^a-z]+/i,"");
str = str.match(/(^.)(.+)/);
str = str[1].toUpperCase() + str[2];

alert(str);
警报:

Abcd#_)#$$

如果使用
i
分隔符,正则表达式将不区分大小写,您可以在比较单词时使用此分隔符

试试这个

将替换文本前的所有非a-zA-Z字符:

var str = "#$DSFfd#_)#$$";

alert(str.replace(/[^a-z]+/i, ""))
如果要删除所有非a-zA-Z字符,请执行以下操作(添加了
g
分隔符,表示全局):

大写第一字符

var str = "#$abcd#_)#$$";
str = str.replace(/[^a-z]+/i,"");
str = str.match(/(^.)(.+)/);
str = str[1].toUpperCase() + str[2];

alert(str);
警报:

Abcd#_)#$$
试试这个:

str.replace(/^[^a-z]+/i, '').toUpperCase();
试试这个:

str.replace(/^[^a-z]+/i, '').toUpperCase();
str.replace(/^[^\w\d]*/,“”)

测试使用:

str.replace(/^[^\w\d]*/,'')


测试使用:

您可以发布一些示例输入和示例输出吗?输入将只是一个内置在数组中的文章名称,然后从那里我执行字母排序来重新组织它们。但是,如果主角不是一个字母,它会按照前面的顺序来排列。你可以发布一些示例输入和示例输出吗?输入将只是一个文章名称,所有这些名称都构建在一个数组中,我从那里执行字母排序来重新组织它们。但是,如果前导字符不是一个字母,那么它会按照前导顺序进行排序。在检查字符方面,是什么将此替换与上面的替换区分开来的?只有我的也检查数字字符,就像原来的问题一样。另一种替代方法可以是str.replace(/^[^a-zA-Z0-9]*/,'');在检查字符方面,是什么将这个替换与上面的替换区分开的?只有我的替换区也检查数字字符,就像原来的问题一样。另一种替代方法可以是str.replace(/^[^a-zA-Z0-9]*/,'');