webForumDet fria alternativet

Konvertera en text...

3 svar · 453 visningar · startad av JakobJ

JakobJMedlem sedan apr. 200839 inlägg
#1

Låt säga att jag har:
$string == "PHP är bra.";

...och vill göra om det till:
$string == "php-ar-bra";

Alltså, alla versaler skall konverteras till gemener, dessutom skall dessa tecken konverteras till det angivna:
" " - "-"
"Å" - "a"
"Ä" - "a"
"Ö" - "o"
"å" - "a"
"ä" - "a"
"ö" - "o"
"-" - "-"
"!" - ""
"?" - ""
"." - ""
"," - ""
":" - ""
";" - ""
"(" - ""
")" - ""

Någon som kan ordna detta, tro :) ?

jmeMedlem sedan maj 20012 237 inlägg
#2

$foo = strtolower('FOO'); // 'foo'

JakobJMedlem sedan apr. 200839 inlägg
#3

Det konverterar väl bara versaler till gemener?

i2n2Medlem sedan jan. 2007177 inlägg
#4

För engångsbruk, dvs utan någon tanke på optimering.

#!/usr/bin/php
<?php

// Test på testdata

$testStr = "START-Åa Äa Öo åa äa öo !?.,:;()-END" ;
echo $testStr . "\n";
$testStr = convert_JakobJ($testStr);
echo $testStr . "\n";

function convert_JakobJ($str)
{

	$pattern = '/[ÅÄåä]/';
	$replacement = 'a';
	$str = preg_replace($pattern, $replacement, $str);

	$pattern = '/[Öö]/';
	$replacement = 'o';
	$str = preg_replace($pattern, $replacement, $str);
	
	$pattern = '/[!?.,:;()]/';
	$replacement = '';
	$str = preg_replace($pattern, $replacement, $str);

	$pattern = '/[ ]/';
	$replacement = '-';
	$str = preg_replace($pattern, $replacement, $str);
	
	$str = strtolower($str);
	
	return $str;
}
?>
132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)