小编Fus*_*ion的帖子

是否可以基于正则表达式模式生成示例字符串?

在我的应用程序中,用户可以将自己的正则表达式模式输入到文本框中,这样他就可以强制为另一个用户/文本框输入特定的输入.用户是否可以查看与他输入的正则表达式匹配的字符串示例?例如,如果他要输入:^[A-Z]{2}$,它将生成一个类似" XX" 的字符串,以向用户显示他只能输入两个大写字母.

如果没有简单的方法来实现这一点(我认为没有),那么构建有多难?或者这样的事情已经存在?

c# regex string

14
推荐指数
2
解决办法
5044
查看次数

如何将子类型应用于SQL Server数据库?

我正在制定一个程序,您可以在其中注册投诉.有三种类型的投诉:( internal员工的错误),external(来自其他公司的supplier错误)和(供应商的错误).它们包含无法共享的不同数据.我目前有4张桌子(投诉,员工,公司和供应商).这是表格的可视化:

我对子类型有基本的了解,但我似乎无法将它们从ERD转换为实际的SQL Server数据库,或者至少在这种情况下.这大致是4个表的外观(省略了不相关的属性):

投诉
ComplaintId PK

Employee
EmployeeId PK
EmployeeName

公司
CompanyId PK
CompanyName

供应
商SupplierId PK
供应商名称

注册投诉时,错误由3种类型中的任何一种产生,它们都存储不同的信息.在这种情况下,存储信息的最佳方法是什么?我曾经想过把2个鉴别的投诉表的:ComplaintTypeId这样我可以指出,以检查其表,我需要什么ID,但不是很干净,也没有效率.

请协助.

sql-server subtype supertype

11
推荐指数
2
解决办法
1万
查看次数

使用GetProcessesByName检查进程是否正在运行的最佳方法?

尽管主题标题解释了大部分问题,但我想草拟出这个场景,以便您了解这个问题的背景.

我有一个类似Outlook联系人列表的应用程序.它从Outlook获取所有联系人,结果是它们显示在数据网格视图中.现在,不是每次我的应用程序打开并关闭它时都启动Outlook,我希望它在打开时不打开,并在应用程序关闭且用户已经运行Outlook时保持打开状态.这是我的用法:

Process[] pName = Process.GetProcessesByName("OUTLOOK");
if (pName.Length == 0)
{
    MessageBox.Show("Outlook is not running."); // Open Outlook anew.
}
else
{
    MessageBox.Show("Outlook is running."); // Do not re-open Outlook.
}
Run Code Online (Sandbox Code Playgroud)

这是最好和最安全的方式吗?先感谢您.

c# outlook process

9
推荐指数
1
解决办法
6041
查看次数

填补数字列表中的空白最简单的方法是什么?

我在标题的单行中解释问题时遇到了一些麻烦,但希望这个描述能够为您提供足够的洞察力来完全理解我的问题:

我在Word文档中有一些变量.每个变量都有一个Value数字(从0到变量数).A SortedDictionary正在填充这些变量,但之前可能已经删除了一个变量,因此可以说有一个"缺口".例:

5变量被添加到SortedDictionary<int, string>第一个数字所在的位置int,而字符串对应于stringSortedDictionary 的部分.

0 "name 1"
1 "name 2"
2 "name 3"
Run Code Online (Sandbox Code Playgroud)

现在删除其中一个变量,因此字典填写如下:

0 "name 1"
2 "name 3"
Run Code Online (Sandbox Code Playgroud)

最终所有SortedDictionary条目都被添加到列表框中,我使用第一个数字作为插入的索引.你可以想像,当它试图将项目添加到它会给出一个错误index 2index 1不存在,但index 0确实.

我想要解决的DeleteVariable()方法是当用户调用方法并取消变量时,所有变量都应自动更新其值(数字),这样当SortedDictionary获取所有变量时,列表框不再出错,因为所有数字匹配(无间隙).

请指教.

c# ms-word sorteddictionary

5
推荐指数
1
解决办法
840
查看次数

如何将多行文本框中的文本放入一个字符串?

我遇到了一些问题.场景是我有一个多行文本框,我想把所有文本放在一个单独的字符串中,没有任何新行.这就是我现在所拥有的:

string[] values = tbxValueList.Text.Split('\n');                
            foreach (string value in values)
            {
                if (value != "" && value != " " && value != null && value != "|")
                {
                    valueList += value;
                }
            }
Run Code Online (Sandbox Code Playgroud)

问题是无论我尝试什么和我做什么,我的字符串总会有一个新行(至少我认为?),所以不要得到:

"valuevaluevalue"

我明白了:

"
价值
价值".

我甚至试图用string.Replace和替换regex.Replace,但是唉也无济于事.请指教.

您诚挚的,
Kevin van Zanten

c# textbox split newline

0
推荐指数
1
解决办法
1979
查看次数