using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows.Forms;
using LYF.Framework.Commons;
using WindowsFormsApp1.Validation;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
//过滤字母的字典
string[] filterWords = {
"\\(.*?\\)",
@"^*[▲|★|◇|◆|>|<|□|#]",
@"[A-Za-z0-9]{1,9}$",
@"[0 - 9]$",
@"^*[0-9\.]",
@"^[a - zA - Z]",
@"\[.*\]",
@"\(.*\)",
@"\<.*\>",
@"\{.*\}",
@"\(.*\)", @"\【.*\】",
@"^[▲|★|◇|◆|>|<|□|#]",
@"[▲|★|◇|◆|>|<|□|#]$",
@"[▲|★|◇|◆|>|<|□|#]$",
@"\\s+"
};
string strExp = @"<[^>]+>|</[^>]+>";
string str0 = "(乙10%)丙泊酚中/長鏈脂肪";//整蛊紫金丸
string str01 = "(乙10%)整蛊甲紫/金丸甲";//整蛊紫金丸
string str02 = "(5mg)整蛊甲紫(加洛寧)";//整蛊紫金丸
string str11 = "(甲)10整蛊甲紫金丸甲";//整蛊紫金丸
string str12 = "乙10整蛊紫金丸(丙)";//整蛊紫金丸
string str13 = "丙10整蛊紫金丸乙";//整蛊紫金丸
string str = "▲乙10整蛊紫金丸▲";//整蛊紫金丸
string str1 = "◇(乙10)整蛊紫金丸H";//整蛊紫金丸
string str2 = "★磁共振A扫描>15T";//磁共振扫描
string str3 = "[98]磁共振扫{描}";//磁共振扫描
string str4 = "09磁共-振扫描12345";//磁共振扫描
string str5 = "[甲]◇磁共振扫.描J2";//磁共振扫描
string str51 = "(甲)◇磁共振CT扫.描J2";//磁共振扫描
string str6 = "甲磁共<振扫描>j2";//甲核磁磁共振扫描<>
string str7 = "[乙]磁共{振扫描}IGM";//磁共振扫描
string str8 = "A磁共振[乙]扫描IGM";//磁共振扫描
string str9 = "维生素(甲)VC泡腾片";//磁共维生素VC泡腾片
string str62 = "牵引(土法牵引减收)";//甲核磁磁共振扫描<>
string str631 = "<乙甲限>(澳博达)盐酸西替";//甲核磁磁共振扫描<>
string str63 = "<乙甲限>(澳博达)盐酸西替";//甲核磁磁共振扫描<>
string str621 = "牵引(土法牵引减收)";//甲核磁磁共振扫描<>
string str6311 = "(诊查费)";//甲核磁磁共振扫描<>
string str6211 = "(诊查费)";//甲核磁磁共振扫描<>
string str62111 = "肺力咳合剂#";//甲核磁磁共振扫描<>
string str621111 = "当归□";//甲核磁磁共振扫描<>
string str6211113 = "三拗片【片】";//甲核磁磁共振扫描<>
string str6211114 = "茯苓颗粒◆□(A)";//甲核磁磁共振扫描<>
string str6211115 = "(乙甲)蓝芩口服液(基)";//甲核磁磁共振扫描<>
// [aa][bb][cc][dd][ee]
//[甲]磁共振扫描J2 输出:磁共振扫描
//(甲)磁共振扫描J2输出:磁共振扫描
// 甲磁共振扫描J2输出:甲磁共振扫描
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string strTemp50 = StringExtensionMethod.RemoveWords(str11, filterWords);
string strTemp51 = StringExtensionMethod.RemoveWords(str12, filterWords);
//string pattern = Regex.Replace(str5, @"\[.*\]", "");//过滤[]
//CRegex.IsMatch(str5,)
//string dd = StringExtensionMethod.Substring(str5, "\\[", "\\]");
//CRegex.Replace(str,"", list);、、
//if(str.StartsWith()
string strTemp1 = StringExtensionMethod.RemoveWords(str, filterWords);
string strTemp2 = StringExtensionMethod.RemoveWords(str1, filterWords);
string strTemp3 = StringExtensionMethod.RemoveWords(str2, filterWords);
string strTemp4 = StringExtensionMethod.RemoveWords(str3, filterWords);
string strTemp5 = StringExtensionMethod.RemoveWords(str4, filterWords);
string strTemp7 = StringExtensionMethod.RemoveWords(str6, filterWords);
string strTemp71 = StringExtensionMethod.RemoveWords(str7, filterWords);
string strTemp8 = StringExtensionMethod.RemoveWords(str9, filterWords);
//string strTemp92 = StringUtil.RemovePrefix(str1, filterWords1);
//string strTemp91 = StringUtil.RemovePrefix(str, filterWords1);
//string strTemp110 = StringUtil.RemovePrefix(str3, filterWords1);
//string strTemp11021 = StringUtil.RemovePrefix(str4, filterWords1);
//string strTemp9 = StringUtil.RemovePrefix(str8, filterWords1);
//string strTemp911 = StringUtil.RemovePostfix(strTemp9, filterWords1);
//string strTemp10 = StringUtil.RemovePostfix(str6, filterWords1);
//string strTemp911 = StringUtil.RemovePostfix(str1, filterWords1);
//string strTemp1101 = StringUtil.RemovePrefix(strTemp911, filterWords1);
}
}
}
using Microsoft.VisualBasic;
using System;
using System.Text.RegularExpressions;
namespace WindowsFormsApp1.Validation
{
public static class StringExtensionMethod
{
/// <summary>
/// 从字符串中替换指定的字符,可以指定是否大小写敏感。
/// </summary>
/// <param name="str">输入的字符串</param>
/// <param name="find">查找字符串</param>
/// <param name="replacement">替换字符串</param>
/// <param name="caseSensitive">是否大小写敏感</param>
/// <returns></returns>
public static String Replace(this String str, String find, String replacement, bool caseSensitive)
{
if (caseSensitive)
return Microsoft.VisualBasic.Strings.Replace(str, find, replacement, 1, -1, CompareMethod.Binary);
else
return Microsoft.VisualBasic.Strings.Replace(str, find, replacement, 1, -1, CompareMethod.Text);
}
/// <summary>
/// 用字符串中的另一个字符代替给定的字符。
/// 替换不区分大小写
/// </summary>
/// <param name="val"></param>
/// <param name="charToReplace">要替换的字符</param>
/// <param name="replacement">替换的字符</param>
/// <returns>替换字符串的字符串副本</returns>
public static string CaseInsenstiveReplace(this string val, char charToReplace, char replacement)
{
Regex regEx = new Regex(charToReplace.ToString(), RegexOptions.IgnoreCase | RegexOptions.Multiline);
return regEx.Replace(val, replacement.ToString());
}
/// <summary>
/// 用字符串中的另一个字符串代替给定的字符串。
/// 替换不区分大小写
/// </summary>
/// <param name="val"></param>
/// <param name="stringToReplace">要替换的字符串</param>
/// <param name="replacement">要替换的字符串</param>
/// <returns>替换字符串的字符串副本</returns>
public static string CaseInsenstiveReplace(this string val, string stringToReplace, string replacement)
{
Regex regEx = new Regex(stringToReplace, RegexOptions.IgnoreCase | RegexOptions.Multiline);
return regEx.Replace(val, replacement);
}
/// <summary>
/// 删除字符串中出现的单词,匹配区分大小写。
/// </summary>
/// <param name="val"></param>
/// <param name="filterWords">要从字符串中删除的单词数组</param>
/// <returns>删除单词的字符串副本</returns>
public static string RemoveWords(this string val, params string[] filterWords)
{
return MaskWords(val, char.MinValue, filterWords);
}
/// <summary>
/// 用给定字符掩码字符串中的出现的单词
/// </summary>
/// <param name="val"></param>
/// <param name="mask">要应用的字符掩码</param>
/// <param name="filterWords">要替换的单词</param>
/// <returns>应用掩码的字符串副本</returns>
public static string MaskWords(this string val, char mask, params string[] filterWords)
{
string stringMask = mask == char.MinValue ?
string.Empty : mask.ToString();
string totalMask = stringMask;
foreach (string s in filterWords)
{
Regex regEx = new Regex(s, RegexOptions.IgnoreCase | RegexOptions.Multiline);
if (stringMask.Length > 0)
{
for (int i = 1; i < s.Length; i++)
totalMask += stringMask;
}
val = regEx.Replace(val, totalMask);
totalMask = stringMask;
}
return val;
}
}
}