Jag är dålig på javascript och skulle behöva hjälp med denna funktion. Jag vet inte riktigt vad du hittat för exempel, men: Håller med dig att den ser knäpp ut Vad jag menade var att du nog borde hitta ett annat exempel, vilket du själv nog kommit fram till. Där ser man vad en bokstav betyderErsätta länkar med klickbar text
I ASP.NET har jag gjort följande funktion som ersätter alla förekomster av länkar i en text
med texten Klicka som en länk
Shared Function RegExpHrefChange(ByVal txtInm As String) As String
Dim strContent As String = txtInm
RegExpHrefChange = ""
If strContent <> Nothing And strContent <> String.Empty Then
Dim urlregex As Regex = New Regex("((http|ftp|https):\/\/([\w.]+\/?)\S*)", RegexOptions.IgnoreCase Or RegexOptions.Compiled)
strContent = urlregex.Replace(strContent, "Klicka")
RegExpHrefChange = strContent
End If
End Function
Jag skulle nu vilja göra motsvarande i javascript.
Första raden nedan fungerar, med det smäller på nästa
Har letat på nätet men inte hittat något bra exempel
var strHref = new RegExp("((http|ftp|https):\/\/([\w.]+\/?)\S*)")
strText = strHref.replace(strText,"Klicka")
Sv: Ersätta länkar med klickbar text
"Klicka"
ser inte ens ut att vara korrekt javascript, oavsett regexp eller inte. Titta på strängen, den helknäpp ut :)Sv:Ersätta länkar med klickbar text
Men det var ju därför jag frågadeSv: Ersätta länkar med klickbar text
http://www.google.se/search?rlz=1C1GGLS_en-USSE299SE304&sourceid=chrome&ie=UTF-8&q=javascript+regexp+replace
6:e träffen är till Mozilla dokumentation över javascript, vilket får anses som en ganska tillförlitlig källa. Därifrån kan man klicka sig vidare till https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/String/replace som förklarar just funktionen replace.Sv:Ersätta länkar med klickbar text
Detta var inget för en gammal man
Efter otaliga försök har jag fått detta att fungera
på en länk. Om strängen innehåller fler länkar så
ersätts de inte.
I koden gjord i ASP.NET så ersätts alla.
var strHref = /((http|ftp|https):\/\/([\w.]+\/?)\S*)/i;
strText = strText.replace(strHref,"Klicka")
Ger upp för i kväll
Sv: Ersätta länkar med klickbar text
<script type="application/ecmascript">
function RegExpHrefChange(text)
{
var exp = /((https?|ftp):\/\/([\w.]+\/?)\S*)/gi;
return text.replace(exp, "$1");
}
</script>
Eller:
<script type="application/ecmascript">
function RegExpHrefChange(text)
{
var exp = new RegExp("((https?|ftp):\\/\\/([\\w.]+\\/?)\\S*)", "gi");
return text.replace(exp, "$1");
}
</script>
Sv:Ersätta länkar med klickbar text
Det löste mitt problem
Tack så mycket