谁能告诉我如何用 Java 或 Javascript 编写一个正则表达式,如果“href”、“”、“www”将返回 false。还是在文本区域输入“http”?我不希望人们或机器人能够将这些术语输入到文本区域?
我试过(?![http|<[^>]*>|href|www\.])[A-Za-z]
但它不起作用。
谁能告诉我如何用 Java 或 Javascript 编写一个正则表达式,如果“href”、“”、“www”将返回 false。还是在文本区域输入“http”?我不希望人们或机器人能够将这些术语输入到文本区域?
我试过(?![http|<[^>]*>|href|www\.])[A-Za-z]
但它不起作用。
你可以尝试的是:
/(http|www.|href)/g
global 选项导致正则表达式在第一次匹配时不停止。
尝试练习:
http://scriptular.com/#%28href|www.|http%29||||g||||[%22\%22href\%22%2C%20\%22\%22%20\% 22www.\%22%20或%20\%22http%22]
另外,请注意,当您使用时:
[http|<[^>]*>|href|www\.]
请记住,括号表示匹配,或者,我相信 [http|www|href] 会与 [efhptrw|] 做同样的事情。(除非管道也可以在括号中使用 - 任何人都可以澄清一下吗?)
编辑:
关于什么:
/(http[s]?:\/\/|www\.\S|href)/i
在这种测试字符串上试试:
"hrf", "hre"
"ww."
or "htp
"hrf", "href"
"www."
"www. "
or "http://
or "https://
http
请注意,在完全正确输入匹配之前,它不会返回任何内容。我认为您不需要对此进行负面展望。
var reg = new RegExp(/(http|www.|href)/, 'g')
console.log( yourInput.value.test(reg) ); //prints true if there is http or www. or href