🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.javascript
4 messages
4 total messages Started by Krystian Mon, 05 Apr 2010 15:46
Podział wyrażenia na litery i cyfry
#49937
Author: Krystian
Date: Mon, 05 Apr 2010 15:46
17 lines
1657 bytes
Witam,

Czy jest jakaś gotowa funkcja z której można skorzystać, żeby
wyciągnąć z danego wyrażenia w dwóch oddzielnych kolumnach litery i
cyfry

Np dla przykładu chciałbym oddzielić liter od cyfr z Numeru budynku
czyli:

42C => 42, C
7a => 7, A
8 => 8

Coś w ten sposób? dane trzymane są w bazie danych jak ma to znaczenie
i chciałbym rozdzielić na 2 kolumny.

Pozdrawiam i dzięki za pomoc!.
Re: Podział wyrażenia na litery i cyfry
#49938
Author: Peter May
Date: Mon, 05 Apr 2010 20:08
23 lines
1674 bytes
W dniu 2010-04-05 17:46, Krystian pisze:
> Witam,
>
> Czy jest jakaś gotowa funkcja z której można skorzystać, żeby
> wyciągnąć z danego wyrażenia w dwóch oddzielnych kolumnach litery i
> cyfry
>
> Np dla przykładu chciałbym oddzielić liter od cyfr z Numeru budynku
> czyli:
>
> 42C =>  42, C
> 7a =>  7, A
> 8 =>  8
>
> Coś w ten sposób? dane trzymane są w bazie danych jak ma to znaczenie
> i chciałbym rozdzielić na 2 kolumny.

Jeśli używasz PHP po stronie serwera, to ja użyłbym preg_split. Nie 
ufałbym, iż każdy ma dostępny / włączony JavaScript. Natomiast po 
stronie JavaScript-u użyłbym po prostu split + wyrażenie regularne.

-- 
Peter
Re: Podział wyrażenia na litery i cyfry
#49939
Author: Andrzej Kmicic
Date: Tue, 06 Apr 2010 20:17
57 lines
2260 bytes
Peter May pisze:
> W dniu 2010-04-05 17:46, Krystian pisze:
>> Witam,
>>
>> Czy jest jakaś gotowa funkcja z której można skorzystać, żeby
>> wyciągnąć z danego wyrażenia w dwóch oddzielnych kolumnach litery i
>> cyfry
>>
>> Np dla przykładu chciałbym oddzielić liter od cyfr z Numeru budynku
>> czyli:
>>
>> 42C =>  42, C
>> 7a =>  7, A
>> 8 =>  8
>>
>> Coś w ten sposób? dane trzymane są w bazie danych jak ma to znaczenie
>> i chciałbym rozdzielić na 2 kolumny.
> 
> Jeśli używasz PHP po stronie serwera, to ja użyłbym preg_split. Nie 
> ufałbym, iż każdy ma dostępny / włączony JavaScript. Natomiast po 
> stronie JavaScript-u użyłbym po prostu split + wyrażenie regularne.
> 
split działa na separator wiec wydaje się ze trzeba iterować po 
kolejnych znakach :

var num='47a';
var ValidNumbers = '0123456789';
var number='';
var alpha='';
	for (x in num) {
		if (ValidNumbers.indexOf(num[x])==-1) {
		alpha+=num[x]; }
	else {
		number+=num[x];
	}
}

alert(number+', '+alpha);

lub z użyciem WR :

var num='47a';
var number='';
var alpha='';
for (x in num) {
	if (/[0-9]/.test(num[x])) {
		number+=num[x];
	} else {
	alpha+=num[x];
	}
}
alert(number+' ,  '+alpha);

na końcu należałoby dodatkowo trymować spacje i inne ewentualnie 
pojawiajace sie separatory :-).
pozdrawiam
Ak
Re: Podział wyrażenia na litery i cyfry
#49940
Author: Peter May
Date: Wed, 07 Apr 2010 07:53
61 lines
2546 bytes
W dniu 2010-04-06 22:17, Andrzej Kmicic pisze:
> Peter May pisze:
>> W dniu 2010-04-05 17:46, Krystian pisze:
>>> Witam,
>>>
>>> Czy jest jakaś gotowa funkcja z której można skorzystać, żeby
>>> wyciągnąć z danego wyrażenia w dwóch oddzielnych kolumnach litery i
>>> cyfry
>>>
>>> Np dla przykładu chciałbym oddzielić liter od cyfr z Numeru budynku
>>> czyli:
>>>
>>> 42C => 42, C
>>> 7a => 7, A
>>> 8 => 8
>>>
>>> Coś w ten sposób? dane trzymane są w bazie danych jak ma to znaczenie
>>> i chciałbym rozdzielić na 2 kolumny.
>>
>> Jeśli używasz PHP po stronie serwera, to ja użyłbym preg_split. Nie
>> ufałbym, iż każdy ma dostępny / włączony JavaScript. Natomiast po
>> stronie JavaScript-u użyłbym po prostu split + wyrażenie regularne.
>>
> split działa na separator wiec wydaje się ze trzeba iterować po
> kolejnych znakach :
>
> var num='47a';
> var ValidNumbers = '0123456789';
> var number='';
> var alpha='';
> for (x in num) {
> if (ValidNumbers.indexOf(num[x])==-1) {
> alpha+=num[x]; }
> else {
> number+=num[x];
> }
> }
>
> alert(number+', '+alpha);
>
> lub z użyciem WR :
>
> var num='47a';
> var number='';
> var alpha='';
> for (x in num) {
> if (/[0-9]/.test(num[x])) {
> number+=num[x];
> } else {
> alpha+=num[x];
> }
> }
> alert(number+' , '+alpha);
>
> na końcu należałoby dodatkowo trymować spacje i inne ewentualnie
> pojawiajace sie separatory :-).

Na grupie comp.lang.javascript autor wątku dostał już odpowiedź :-)

-- 
Peter
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads