我正在開發一個Web瀏覽器。有沒有內置的方式來轉換部分url字符串,如"example.com"
或"www.example.com"
等...到"http://www.example.com/"
?
將部分url字符串轉換爲完整的url字符串
回答
從我的理解你的問題,這是你假裝。
String url = "www.example.com"
//Checks if the string does not start with http://
if (!url.startsWith("http://" && !url.endsWith("/") {
//Appends the http in the begginning of the String
url.insert(0, "http://");
}
//Checks if the string does not end with/
if (!url.endsWith("/") {
//Appends the slash in the end of the url
url.append("/");
}
請注意,我添加了URL字符串的驗證,因爲在某些情況下,我猜你沒有確定的url格式。
這不涉及所有的情況......我敢肯定,有一種內置的方式來轉換所有情況下正確的網址 –
不能忘記最後的「/」 - !url.endsWIth(「/ 「) – Sh4d0wsPlyr
@ Sh4d0wsPlyr謝謝,我沒有注意到這一部分。更新了我的答案。 –
我不確定這是否能解決您的問題 - 但我可能會建議使用URL類中的構建來嘗試解決此問題。請看下面的鏈接並決定它們是否有幫助。
https://docs.oracle.com/javase/tutorial/networking/urls/
假設你正試圖上鍵入到Web瀏覽器的地址欄中一個String
操作,那麼你可以有信心做的唯一一件事就是檢查是否該字符串已經以「http://」或「https://」或其他某種方案(如「ftp://」)開頭,如果不是,則在開頭加上「http://」。
正如在評論中提到的那樣,假設子域應該設置爲「www」是錯誤的,因爲並不是所有的web服務器都配置了這個子域。 (而且很容易對Web服務器進行配置,以重定向到如果網站所有者喜歡「www」的子域的請求。)
所以我說你需要的代碼很簡單:
// Create a static final class field.
static final Pattern STARTS_WITH_SCHEME = Pattern.compile("^ *[a-z]+://");
// Then within your method code make use of the Pattern.
if (!STARTS_WITH_SCHEME.matcher(urlString).find()) {
urlString = "http://" + urlString.trim();
}
這將檢查您的urlString
是否以冒號和雙斜線開頭。如果不是,那麼「http://」將被預置爲urlString
。請注意,Pattern
允許空格出現在urlString
的最開始處,然後方法代碼將其修剪掉。
- 1. 將url編碼的字符串轉換爲python unicode字符串
- 2. 將URL字符串轉換爲java.io.File
- 3. 如何將字符串轉換爲url?
- 4. 強制URL將四部分的Unicode字符串轉換爲中文字符
- 5. SQL替換部分url字符串
- 6. Password中的特殊字符將URL轉換爲字符串
- 7. 將字符串轉換爲字符串
- 8. 如何將一串url的字符串轉換爲drawable?
- 9. 將部分字符串轉換爲turbo C++中的整數
- 10. 將URL的十六進制數字轉換爲字符串
- 11. 將字符串[]轉換爲逗號分隔的字符串。
- 12. 將部分字符串轉換爲另一個字符集
- 13. 轉換的URL,查詢字符串
- 14. 將字符串轉換爲整數
- 15. 將字符串轉換爲整數
- 16. 不將字符串轉換爲整型
- 17. Python將字符串轉換爲整數?
- 18. 將字符串轉換爲整數C#
- 19. Swift:將字符串轉換爲整數
- 20. 將字符串轉換爲整數
- 21. 將字符串轉換爲整數
- 22. 將字符串轉換爲大整數?
- 23. 將字符串轉換爲整數?
- 24. Java將字符串轉換爲整數
- 25. 將整數轉換爲字符串
- 26. 將字符串轉換爲整數
- 27. 將整數轉換爲字符串
- 28. 將字符串轉換爲整數
- 29. URL轉義MFC字符串
- 30. 如何將字符串的字符串轉換爲字符?
'gmail.com'既不是一個URL也不是一個URI。這是一個域。 –
維基百科總是很好。 https://en.wikipedia.org/wiki/Uniform_resource_identifier#The_relationship_between_URIs.2C_URLs.2C_and_URNs –
我想你沒有意識到我的問題。我編輯了我的帖子。 –