[英]C# any pattern matching with database string
在數據庫中查找文本模式的任務中需要幫助。 我用C#開發了一個程序。 我需要搜索用戶輸入的文本模式,該模式將在數據庫中搜索。 問題在於用戶輸入不需要匹配數據庫中的字符串,而只是與之相似。 下面的示例說明了這一點:
例如,數據庫字符串為“我需要在數據庫中查找文本”
用戶輸入是“查找數據庫需求”
我希望你明白。
請幫我找到數據庫字符串中的任何模式。 提前致謝!
生成語句的方法:
public static string WildFindStatement( String search )
{
//REPLACE THE STRING WITH SQL INJECTION SAFE PARAMTERS
//THATS ONLY FOR CONCEPT SHOWING (or at least a string buildeR)
string sql = "select * from bla where 1=1 ";
string [] sa = search.Split( new char[] {' '} );
foreach ( var s in sa )
{
sql += ( " AND columBla LIKE '%" + s + "%'");
}
return sql;
}
致電:
string s = WildFindStatement( "the wookies you must find" );
結果:
select * from bla where 1=1
AND columBla LIKE '%the%'
AND columBla LIKE '%wookies%'
AND columBla LIKE '%you%'
AND columBla LIKE '%must%'
AND columBla LIKE '%find%'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.