问题列表 - 第18004页

用正则表达式在第二个逗号之前找到单词

我想将单词存储在字符串中的第二个逗号之前.

所以如果字符串看起来像这样:你好,我的名字是David,bla bla.

我想设置变量$ test = David

php regex string

0
推荐指数
2
解决办法
6801
查看次数

是否有一个简单的小型语言编译器

我正在寻找一个简单的编译器来编译一个简单的语言,我需要它来写一篇关于它的论文并了解编译器是如何工作的,我不是在寻找一个复杂的东西只是一个简单的语言(简单来说,我的意思是一个小代码,因为例如gcc太大了).任何帮助表示赞赏.

compiler-construction parsing code-generation lexical-analysis

37
推荐指数
4
解决办法
1万
查看次数

使用regexp进行编号分组

是否有可能做数分组(例如,将数字转换1000为字符串"1 000")使用一个通仅正则表达式?(我知道正则表达式和语言设施之间的界限在某些系统中有点模糊 - 在回复之前倾听你的良心.)

我之所以问的原因:另一个开发人员最近问我如何在JavaScript中进行数字分组,并使用regexp向我展示了一个稍微不正确的JavaScript函数.我给了他一个更好的选择,但他的正则表达式唠叨我,因为这种重写肯定是常规语法应该能做的事情,但我真的无法弄清楚如何为它编写正则表达式.

这是我第一次天真的尝试,我知道这是不正确的:

function group(n) { return n.toString().replace(/(\d{3})/g, "$1 "); }
Run Code Online (Sandbox Code Playgroud)

这种方法有两个缺陷; group(1000)收益率"100 0"group(100)收益率"100 "(尾随空间).你可以这样解决它:

String.prototype.reverse = function () { 
    var a = []; 
    for (var i = this.length; i >= 0; --i) a.push(this[i]); 
    return a.join("");
}; 
function group(n) { 
    return n.toString().reverse().replace(/(\d{3})/g, "$1 ").
        trimRight().reverse(); 
}
Run Code Online (Sandbox Code Playgroud)

但这不是一个,不是两个,不是三个,而是四个通道(两个反转,一个替换,和trimRight)!然后我冒险进入后面的土地,并提出:

function group(n) { return n.toString().replace(/(\d{3}(?!\d))/g, " $1");
Run Code Online (Sandbox Code Playgroud)

...根本不起作用(编辑 - 可能是因为我混淆了后视和负面前瞻...... …

regex language-agnostic

3
推荐指数
2
解决办法
1020
查看次数

使用RuntimeExceptions和CheckedExceptions

您对在应用程序中使用CheckedExceptions和RuntimeExceptions有何看法?我被建议使用两者的组合,据我所知,你可以将一连串的CheckedException调用与RuntimeException一起传播.

java exception-handling

4
推荐指数
1
解决办法
360
查看次数

'矩阵包含值X?'的函数

是否有内置的MATLAB函数来确定矩阵是否包含某个值?(ala PHP的in_array())

floating-point matlab function matrix

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

Control PointToClient()与PointToScreen()

恕我直言,MSDN没有提供Control.PointToScreen(链接)和Control.PointToClient(链接)方法之间的明显区别.

是否有人可以用一些简单的词语解释这些方法之间的区别.特别是我不清楚"客户"的概念.

我理解PointToScreen给定点的实际屏幕坐标(屏幕左上角的[0,0]).

例如,调试我的一些代码

?click.Location 
{X = 3 Y = 9}

?shapeSender.PointToClient(click.Location)
{X = -470 Y = -565}

?shapeSender.PointToScreen(click.Location)
{X = 476 Y = 583}
Run Code Online (Sandbox Code Playgroud)

谢谢.

.net winforms

30
推荐指数
3
解决办法
3万
查看次数

如何将视图从一个数据库复制到另一个数据库

我在MS SQL服务器中有两个具有相同结构的数据库.

我想复制所有视图另一个数据库.

我尝试使用DTS的导出数据功能(适用于表对象).

但是,它执行SQL并创建表对象.

我不想执行那只想复制视图,以便我可以在设计视图中打开它们.

我尝试在目标数据库中使用create new view并复制源数据库视图的SQL查询并保存视图.这项工作与我想要的完全相同,但我有很多观点和副本数量!

sql-server views

23
推荐指数
4
解决办法
6万
查看次数

为整个解决方案运行自定义工具

有没有办法为整个解决方案"运行自定义工具"?

为什么?自定义工具正在开发中,当进行更改时,我需要刷新使用它的所有项目以确保没有任何中断.

customtool visual-studio

18
推荐指数
3
解决办法
1万
查看次数

MVC中的多页向导 - 存储输入数据的位置

您认为在asp.net-mvc中创建多个页面向导的最佳方法是什么?我在想:

  1. 在每个包含序列化整个对象的页面中创建一个隐藏字段
  2. override OnActionExecuting - >从hidden或tempdata中获取我的对象
  3. override OnResultExecuted - >将对象放入tempdata,当我转到下一页(重定向时)

asp.net-mvc wizard

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

Gitorious是否有针对CIA提交通知的钩子?

由于我在GitHub上的空间用完我的免费帐户(是的,我正在考虑升级),我正在Gitorious上设置新的git存储库(另见GitHub vs Gitorious).GitHub的一个很棒的功能是提交后挂钩,它允许我通知(也很棒的)CIA网络 ......

但是,我一直无法找到Gitorious是否支持这样的钩子......所以,我想问一下获取提交消息的最佳实践是否出现在CIA网络上,用于Gitorious托管的git存储库.

更新:使用辅助机制来触发CIA提交消息的解决方案不是我想要的.

git hook commit gitorious

8
推荐指数
2
解决办法
3275
查看次数