是否有精简和简化的正则表达式,它将检查和替换字符串中不符合JavaScript变量名称语法规范的字符。我写了以下内容:
的jQuery
var content = $('pre:eq(0)').html();
var tmp = content.split("\n");
var validVar = [];
$.each(tmp, function(index, value) {
validVar.push(tmp[index].replace("!", "").replace("(", "").replace(",", "").replace(")", "").replace(".", "").replace("'", "").replace("&", "").replace(" ", "").replace("/", "").replace(/\s+/g, '').replace("-", ""));
});
var validName = validVar.toString().split(",").join("<br/>");
console.log(validName);
$('pre:eq(1)').html(validName);
HTML
<table>
<tbody>
<tr>
<td class='header zero'>Original</td>
<td class='header'>Variable Name</td>
</tr>
<tr>
<td><pre>Organizer
CapRate Events (CRE)
CTIA (Cellular Telephone Industries Association)
Dubai World Trade Centre (DWTC)
O'Reilly Conferences
PMI (Project Management Institute)
SYS-CON Events
The Software Engineering Institute (SEI)
World Academy of Science, Engineering and Technology</pre></td>
<td><pre class='valid'></pre></td>
</tr>
</tbody>
</table>
具体来说,行:
validVar.push(tmp[index].replace("!", "").replace("(", "").replace(",", "").replace(")", "").replace(".", "").replace("'", "").replace("&", "").replace(" ", "").replace("/", "").replace(/\s+/g, '').replace("-", ""));
应该压缩成一个函数。
此外,如果我们能够以一种格式良好的形式获得变量,例如驼峰式情况,或至少使第一个字符始终为小写。
var content = $('pre:eq(0)').html();
var tmp = content.split("\n");
var validVar = [];
$.each(tmp, function(index, value) {
validVar.push(tmp[index].replace("!", "").replace("(", "").replace(",", "").replace(")", "").replace(".", "").replace("'", "").replace("&", "").replace(" ", "").replace("/", "").replace(/\s+/g, '').replace("-", ""));
});
var validName = validVar.toString().split(",").join("<br/>");
console.log(validName);
$('pre:eq(1)').html(validName);
pre {
color: green;
font-size: 1.13em;
font-family: "Courier New", Courier, monospace;
}
table {
border-collapse: collapse;
border: solid 1px #000;
}
td {
border: solid 1px #000;
background-color: #CCC;
text-align: left;
}
td.header {
text-align: center;
font-weight: bold;
font-family: arial;
font-size: 1.35em;
background-color: #000;
color: #FFF;
}
td.zero {
border-right: solid 1px #CCC;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<table>
<tbody>
<tr>
<td class='header zero'>Original</td>
<td class='header'>Variable Name</td>
</tr>
<tr>
<td><pre>Organizer
CapRate Events (CRE)
CTIA (Cellular Telephone Industries Association)
Dubai World Trade Centre (DWTC)
O'Reilly Conferences
PMI (Project Management Institute)
SYS-CON Events
The Software Engineering Institute (SEI)
World Academy of Science, Engineering and Technology</pre>
</td>
<td><pre class='valid'></pre>
</td>
</tr>
</tbody>
</table>