# Variablen in regex match()



## SonicBe@m (3. Mai 2004)

Hy all

ich hab momentan ein Problem mit einem Javascript.

also
es soll eigentlich ein total simpler regex Check werden

```
function hasTextfielOnlyAllowedCaracters(obj,strAllowedChars){
   // includes a-Z && 0-9
   if(obj.value.match(/[^a-z0-9]/i).length > 0)
      return false
   return true; 
}
```

der witz ist nun 
wie kann ich bitte die Variable strAllowedChars in mein Pattern einbauen?

```
if(obj.value.match(/[^a-z0-9]strAllowedChars/i).length > 0)
```
funktioniert leider nicht
und 

```
if(obj.value.match("/[^a-z0-9]"+strAllowedChars+"/i").length > 0)
```
ebenfalls nicht

ist es überhaupt möglich eine Variable in ein Javascript regex Pattern einzubauen?

-


----------



## Sven Mintel (3. Mai 2004)

Jo.... per eval() kannst du den gesamten Ausdruck zusammenbauen.

Ein Beispiel findet sich irgendwo in den Beiträgen der letzten Woche, da hatten wir dieses Thema gerade.


----------



## SonicBe@m (3. Mai 2004)

super
nachdem ich wusste nach was ich suchen muss hab ich es auch prompt gefunden

versucht mal ne schlüssige Antwort mit regex als Suchwort zu bekommen 



```
function hasTextfielOnlyAllowedCaracters(obj,strAllowedChars){
	// includes a-Z && 0-9
	pattern=eval("/[^a-z0-9" + strAllowedChars + "]/i");
	tmp = obj.value.match(pattern);
	if(tmp != null)
		if(tmp.length > 0)
		return false
	return true; 
}
```


----------

