Re: [PHP-DB] MySQL REGEXP functionality... any way to make this easier?
If you want to generalize the process to a n-set, a recursion method is clearly required. XSLT looks the best candidate to me to do this. I will tackle it when I find some time. Cheers Ignatius - Original Message - From: Xepherys [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, October 10, 2002 8:26 AM Subject: [PHP-DB] MySQL REGEXP functionality... any way to make this easier? Right now, a sample query I might have would be... SELECT * FROM ospd WHERE word REGEXP '^([a]?[p]?[e]?)$|^[p]?[a]?[e]?$|^[a ]?[e]?[p]?$|^[p]?[e]?[a]?$|^[e]?[p]?[a]?$|^[e]?[a]?[p]?$'; where basically I need to query every combination of a, p and e. This is a pain, but for only three letter is not so bad. As you can see, this could become unruly with larger numbers of letters. Each instance of a letter can only occur once. However, a letter may be duplicated and used once for each instance. Hence the statement steps through... it could also be something like... SELECT * FROM ospd WHERE word REGEXP '^[a]?[a]?[e]?$|^[a]?[e]?[a]?$||^[e]?[a]?[a]?$'; more easily written because one letter is used twice and can occure once for each instance. Please let me know if you have any ideas. Jesse [EMAIL PROTECTED] -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DB] MySQL REGEXP functionality... any way to make this easier?
Hi, unfortunately i can't help you much, but listen you can make your pattern more readable if you delete [] there's no need for classes in your pattern SELECT * FROM ospd WHERE word REGEXP '^a?p?e?$|^a?e?p?$|^p?e?a?$|^p?a?e?$|^e?a?p?$|^e?p?a?$'; ? = one or none but if you need each letter then omit ? SELECT * FROM ospd WHERE word REGEXP '^ape$|^aep$|^pea$|^pae$|^eap$|^epa$'; this is the simplest way but it also matches aae, aaa, ppe, ppp ... and probably not what you need SELECT * FROM ospd WHERE word REGEXP '^[aep]{3}$'; I thnk you don't have another choice then to write each combination by yourself greet martin - Original Message - From: Xepherys [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, October 10, 2002 8:26 AM Subject: [PHP-DB] MySQL REGEXP functionality... any way to make this easier? Right now, a sample query I might have would be... SELECT * FROM ospd WHERE word REGEXP '^([a]?[p]?[e]?)$|^[p]?[a]?[e]?$|^[a ]?[e]?[p]?$|^[p]?[e]?[a]?$|^[e]?[p]?[a]?$|^[e]?[a]?[p]?$'; where basically I need to query every combination of a, p and e. This is a pain, but for only three letter is not so bad. As you can see, this could become unruly with larger numbers of letters. Each instance of a letter can only occur once. However, a letter may be duplicated and used once for each instance. Hence the statement steps through... it could also be something like... SELECT * FROM ospd WHERE word REGEXP '^[a]?[a]?[e]?$|^[a]?[e]?[a]?$||^[e]?[a]?[a]?$'; more easily written because one letter is used twice and can occure once for each instance. Please let me know if you have any ideas. Jesse [EMAIL PROTECTED] -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DB] MySQL REGEXP functionality... any way to make this easier?
Right now, a sample query I might have would be... SELECT * FROM ospd WHERE word REGEXP '^([a]?[p]?[e]?)$|^[p]?[a]?[e]?$|^[a ]?[e]?[p]?$|^[p]?[e]?[a]?$|^[e]?[p]?[a]?$|^[e]?[a]?[p]?$'; where basically I need to query every combination of a, p and e. This is a pain, but for only three letter is not so bad. As you can see, this could become unruly with larger numbers of letters. Each instance of a letter can only occur once. However, a letter may be duplicated and used once for each instance. Hence the statement steps through... it could also be something like... SELECT * FROM ospd WHERE word REGEXP '^[a]?[a]?[e]?$|^[a]?[e]?[a]?$||^[e]?[a]?[a]?$'; more easily written because one letter is used twice and can occure once for each instance. Please let me know if you have any ideas. Jesse [EMAIL PROTECTED] -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php