Jump to content

Archived

This topic is now archived and is closed to further replies.

golyath

ereg, preg_match... none work for me :(

Recommended Posts

All i want to do is check the $data variable is in the correct format (i.e 99-aa-00 9999:99)

I have tried to get these to work for me but none seem to. I have put the regex through a regex checker and it works...

i have this:

[tt]<?php
$data = "99-aa-00 9999:99";
$result=preg_match("/^[0-9]{2}-[a-Z]{2}-[0-9]{3}\s[0-9]{4}:[0-9]{2}$/", $data);
if($result != "0"){
echo "correct";
}
else{
echo "wrong";
}
?>[/tt]

but it always returns this error:

Warning: preg_match() [function.preg-match]: Compilation failed: range out of order in character class at offset 13

can anyone tell me what im doing wrong.

thank you for any help, its muchley appreciated

Share this post


Link to post
Share on other sites
Cheers,

I ahve tried both and they both stop the error coming up... but it returns "wrong" but it should return correct. Have structured the statement correctly?

thanks

Share this post


Link to post
Share on other sites
You are looking for 3 digits before the space--it should be 2.

[code]
<pre>
<?php
  $data = '99-aa-00 9999:99';
  echo preg_match('/^\d{2}-[A-Za-z]{2}-\d{2}\s\d{4}:\d{2}$/', $data) ?
'correct' :
'wrong' ;
?>
</pre>
[/code]

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.