Я пытаюсь создать регулярное выражение для яваскрипта проекта, который охватывает каждую гиперссылку, которая начинается с «файл: //»Глядя на регулярное выражение, которое будет охватывать все «файл: //»
Спасибо :)
Я пытаюсь создать регулярное выражение для яваскрипта проекта, который охватывает каждую гиперссылку, которая начинается с «файл: //»Глядя на регулярное выражение, которое будет охватывать все «файл: //»
Спасибо :)
гиперссылок имеют место Properties-
вы можете прочитать document.links [0] .protocol по ссылке.
var links=document.links, L=links.length, filelinks=[];
while(L){
if(links[--L].protocol=='file:')filelinks.push(links[L].href);
}
//eg:
filelinks.join('\n')
file:///C:/webworks/gallery/gallery.html
file:///C:/webworks/library/shared/dewey.html#holmes
file:///C:/webworks/library/shared/dewey.html#twain
file:///C:/webworks/library/shared/dewey.html
Вот очень тщательно версия, разработанная
this парня:
(?i)\b((?:file:(?:\/{2}))(?:www\d{0,3}[.]|[a-z0-9\-]+[.])?(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))
EDIT: Очевидно, что мне нужно изменить несколько вещей, чтобы сделать его более строгим. Я обновил его. Если вы хотите использовать группы захвата, удалите?: Чтобы сохранить обратную ссылку.
Пожалуйста, используйте простой, /(file:\/{2,3}[!#$&-;=?-\[\]_a-z~]+)/
Попробуйте один
/^ (файл: //?). ([\ Да-z.-] +) ([. Аз] { 2,6}) ([/ \ ш .-] ) /? $/
Наслаждайтесь :)
Спасибо! и я ищу префикс «file: //» в строке, и это сделает работу .. спасибо :) – user1322801
Если это правильный ответ на ваш вопрос, отметьте это как ответ. :) – jomsk1e
/^file\/\/:/i.test(str)
str.match(/^file\/\/:\S+/i)
Я бы не проверить больше, чем протокол, URI, являются очень сложными ,
/^ Файл: \/\ // там вы идете –
если вы только тестирование содержимого HREF атрибута, делать, как говорит Асад. Если вы ищете файл: // urls в тексте, это совсем другой вопрос. Пожалуйста, уточните, что вы имеете в виду! –