![]() |
Cleaning out unwanted characters *solved*
I think it was Salathe or someone that gave me a function a while ago I could use that did this, but I lost it, and would also like to code my own.
I'm just creating a simple domain checker script, and if a user inputs a domain with characters not allowed (!@#$%$^&*(), etc.) I want to delete those from the query, and not just output an error message for the user to change his input. First of all, I was trying to use preg_match() with a regex string, but then I was stuck on how to delete the unwanted characters to make it match. I then was going to use str_split() to do individual characters and then run it through a while or foreach loop, and whenever a character matches a certain character (for example, while(preg_match("[a-zA-Z0-9\-]", $letterArray))), however there is one major problem. If I do that, I will have to weed out every single non-alphanumeric character (besides hyphens), except one period. I could explode() the domain and then separate the actual name from the extension, but what if the user accidentally put more than one period? That wouldn't work. So here is my plan, and I'm not sure if anyone can help me come up with a better one. 1. Preg_match() to see if it follows the format of xxxxx.xxx (will allow special characters) 2. If it doesn't, just spit out an error or do some fancy coding to make it work 3. Then go through each character and delete the ones that aren't allowed. Any ideas? I've been working on this for an hour to no avail. |
Anything that can be
preg_matched can also be preg_replaced, so you might be able to filter out disallowed characters (depending on the specific use) in one line of code. |
Well, I thought of that, but I'd have to type in every single special character that can be inputted to make it truly safe, and I'd miss a lot, like the Alt-code ones.
|
With regular expressions you can match characters which aren't something. For example
[^0-9] would match anything which isn't a single digit. |
But how can I use preg_match() to clear out all the unwanted characters using regular expressions? For example, if I used:
PHP Code:
|
use preg_replace() instead of preg_match()
example: PHP Code:
hope that helps :) |
Yeah, thanks. I completely forgot how the output worked on preg_match(). Sigh, I have quite a way to go to get back to how I used to be with PHP.
|
| All times are GMT. The time now is 05:47 PM. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0