-1
什么是检查一个字符串是否是JS中的锚定标记的最佳方法?如何检查一个字符串是否是一个锚标签?
一些例子:
<a href='./page'>Link</a> //returns true
<a href='./page'> //returns false
是否有一个快速简便的方法? 最简单的形式。只要有开口<a>
和关闭</a>
什么是检查一个字符串是否是JS中的锚定标记的最佳方法?如何检查一个字符串是否是一个锚标签?
一些例子:
<a href='./page'>Link</a> //returns true
<a href='./page'> //returns false
是否有一个快速简便的方法? 最简单的形式。只要有开口<a>
和关闭</a>
您可以使用正则表达式是:
function isAnchor(str){
return /^\<a.*\>.*\<\/a\>/i.test(str);
}
演示
var testStrings = [
'<a href="./page">Hello</a>', // true
'<a>Hi</a>', // true
'<a href=\'test.php\'>Yo</a>', // true
'<A HREF=\'test.php\'>UPPERCASE</A>', // true - not case-sensitive
'test', // false
'<a href="./page">Hello', // false - tag not closed
'<span>Hi again</span>' // false
];
for(var i=0; i<testStrings.length; i++){
var str = testStrings[i];
document.body.innerHTML += str + ' => ' + isAnchor(str) + '<br>';
}
function isAnchor(str){
return /^\<a.*\>.*\<\/a\>/i.test(str);
}
也许这将指向你在正确的方向:
var stringOne = "<a href='./page'>Link</a>";
var stringTwo = "<a href='./page'>";
function isA(str){
if (str.indexOf("href") > -1 && str.indexOf("</a>") > -1){
return true;
}else{
return false;
}
}
console.log(isA(stringOne));
console.log(isA(stringTwo));
''作为锚标签? – blex
你最近怎么样? –
@blex是的,这是一个锚标签。 @DaveNewton像我一样说'var string =“”' – lzc