Как найти слова из строки, содержащие специальный символ Бывший:
String sqlQuery = "INSERT INTO TABLE(ID) VALUES(#ABC_11#),(#ABCDE_12#)";
о / п:
ABC_11
ABCDE_12
Добро пожаловать в StackOverflow. Не могли бы вы дать более конкретный вопрос, чтобы мы могли помочь вам лучше? Что вы, например, имеете в виду под специальным символом?
попробуйте это: stackoverflow.com/questions/1805518/…
специальный символ означает что угодно, например:
Строка sqlQuery = "ВСТАВИТЬ В ТАБЛИЦУ (ID) ЗНАЧЕНИЯ (# ABC_11 #), (# ABCDE_12 #)";
# - специальный символ.
№: из строки «ВСТАВИТЬ В ТАБЛИЦУ (ID) ЗНАЧЕНИЯ (# ABC_11 #), (# ABCDE_12 #)»; найдите # значения, например ABC_11 и ABCDE_12
Похоже, вы пытаетесь вручную вставить параметры в свой SQL-запрос. Это делает вас уязвимым для SQL-инъекция. Узнайте о «параметризованных запросах» и используйте их вместо них!




попробуй это
String sqlQuery = "INSERT INTO TABLE(ID) VALUES(#ABC_11#),(#ABCDE_12#)";
Matcher matcher = Pattern.compile("#(.*?)#").matcher(sqlQuery);
while (matcher.find()) {
System.out.println(matcher.group().replaceAll("#",""));
}
Выход
ABC_11
ABCDE_12
Сначала вам нужно очистить имена входов. Это может вам помочь:
//your dirty name inputs
String dirty_name = "#ABC_11#"
//removes special characters like [~!@#$%^&*()-=+]
String name = dirty_name.replace('[^\w]','')
//put in your query
String sqlQuery = "INSERT INTO TABLE(ID) VALUES("+name+")"
Вы ищете решение для Java или MySQL?