[英]How can I select all the text that appears before a url?
HTML:
<input type="text" name="field" id="field" value="Select this text http://www.domain.com" />
JavaScript/JQuery:
$(document).ready(function()
{
var value = $('#field').val();
//select text
});
我怎樣才能 select 出現在url
之前的所有text
? 不應選擇 url 之后的所有內容(包括 url 本身)。
順便說一句,文本還可能包含數字和特殊字符。
解決方案:我最終使用了 Rocket 的解決方案split(/\shttps?:\/\//)
(見下文)。
如果 url 始終是超文本協議,那么您可以執行以下操作:
$(document).ready(function() {
var myText = $('#field').val().split(' http')[0];
});
這將捕獲 http 和 https 協議,據我所知,這是計算密集度最低的方法。
文本只是一個字符串。 您需要確定是什么讓 URL 的一部分獨一無二 - 從 http:// 開始(確保它不是 https:// ),包括 www., 或其他。 一旦您確定了與 url 而不是之前的其他字符匹配的內容,那么就很容易了。
使用 java 對象正則表達式。 這將允許您使用模式匹配和 select 基於 url 模式的文本。
這是關於 javascript RegExp object 的教程: http://www.w3schools.com/jsref/jsref_obj_regexp.asp
這是一個很好的 javascript RegExp 測試器: http://www.regular-expressions.info/javascriptexample.html
如果您對正則表達式有任何問題,請告訴我!!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.