14
简单可靠地检测文本代码的方法?
GMail具有此功能,如果您尝试发送它认为可能带有附件的电子邮件,它将向您发出警告。 由于GMail检测到see the attached电子邮件中的字符串,但没有实际附件,因此当我单击“发送”按钮时,它会通过“确定” /“取消”对话框警告我。 我们在堆栈溢出方面有一个相关的问题。也就是说,当用户进入后像这样的: 我的问题是我需要更改数据库,但我不会创建 一个新的连接。例: 数据集dsMasterInfo = new DataSet(); 数据库db = DatabaseFactory.CreateDatabase(“ ConnectionString”); DbCommand dbCommand = db.GetStoredProcCommand(“ uspGetMasterName”); 该用户未将其代码格式化为代码! 也就是说,他们没有为每个Markdown缩进4个空格,也没有使用代码按钮(或键盘快捷键ctrl+ k)为他们这样做。 因此,我们的系统正在接受很多编辑,人们必须进入这些编辑区域,并手动为无法解决该问题的人们设置代码格式。这导致很多肚皮舞。我们已经多次改善了编辑器的帮助,但是由于没有赶到用户家并为他们按下键盘上的正确按钮,我们无所适从,不知道下一步该怎么做。 这就是我们考虑使用Google GMail样式警告的原因: 您是要发布代码吗? 您编写了我们认为看起来像代码的内容,但是没有使用工具栏代码按钮或ctrl+ k代码格式化命令通过缩进4个空格来将其格式化为代码。 但是,提出此警告要求我们检测问题中是否存在我们认为未格式化的代码。一种简单,半可靠的方法是什么? 根据Markdown的规定,代码总是缩进4个空格或在反引号内,因此任何格式正确的代码都可以立即从支票中丢弃。 这仅是警告,并且仅适用于声誉低下的用户提出第一个问题(或提供其第一个答案),因此,只要它们的错误率在5%或以下,就可以接受一些误报。 关于堆栈溢出的问题可以使用任何语言,尽管实际上可以将检查范围限制为“十大”语言。每个标记页面都是C#,Java,PHP,JavaScript,Objective-C,C,C ++,Python,Ruby。 使用Stack Overflow Creative Commons数据转储来审核您可能的解决方案(或仅在Stack Overflow 的前10个标签中选择几个问题),然后查看其效果。 伪代码很好,但是如果您想变得更加友好,我们可以使用c#。 越简单越好(只要可行)。吻!如果您的解决方案需要我们尝试用10种不同的编译器来编译帖子,或者需要一群人来手动训练贝叶斯推理引擎,那...就不完全是我们的初衷。