问题列表 - 第17388页

正则表达式替换为XML节点

我正在使用Python编写一个正则表达式,用XML节点替换部分字符串.

源字符串如下所示:

Hello
REPLACE(str1) this is to replace
REPLACE(str2) this is to replace

结果字符串应该是这样的:

Hello
<replace name="str1"> this is to replace </replace>
<replace name="str2"> this is to replace </replace>

谁能帮我?

python regex

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

在代码中看不到命名的Silverlight控件

在Silverlight 3的前几个小时里,作为狂热的WPF用户,我对它不支持的许多事情感到非常失望.这对我来说似乎是一个奇怪的问题,它是如此通用,我无法在网上找到任何关于它的东西.

我有以下XAML:

<controls:TabControl x:Name="workspacesTabControl" Grid.Row="1"
Background="AntiqueWhite" ItemsSource="{Binding Workspaces, ElementName=_root}"/>
Run Code Online (Sandbox Code Playgroud)

但是,我无法看到workspacesTabControl代码隐藏.我想也许IntelliSense只是意味着并试图继续编译它,但是有一个错误:

Error   1   The name 'workspacesTabControl' does not exist in the current context
Run Code Online (Sandbox Code Playgroud)

如何在代码隐藏中访问控件?

编辑:我意识到我粘贴了错误的错误 - 我在UserControl中有两个名为workspacesTabControl和menuStrip的控件.在代码隐藏中,我无法通过他们的名字找到其中任何一个.

以防万一,这里是XAML menuStrip:

<controls:TreeView Grid.ColumnSpan="2" Height="100" x:Name="menuStrip"
                   ItemContainerStyle="{StaticResource MenuStripStyle}"
                   ItemsSource="{Binding Menu, ElementName=_root}"/>
Run Code Online (Sandbox Code Playgroud)

再次编辑:

我不确定这是否有用,但我已经看了一下InitializeComponent()代码,这就是我所看到的:

[System.Diagnostics.DebuggerNonUserCodeAttribute()]
public void InitializeComponent() {
    if (_contentLoaded) {
        return;
    }
    _contentLoaded = true;
    System.Windows.Application.LoadComponent(this, new System.Uri("/SapphireApplication;component/SapphireMain.xaml", System.UriKind.Relative));
}
Run Code Online (Sandbox Code Playgroud)

它似乎只是在运行时(不是在编译之前或编译期间)加载XAML,因此menuStripworkspacesTabControl名称实际上并没有在任何地方注册(因为它们通常在WPF/win表单中).该属性可能是个问题吗?我在哪里可以摆脱所有未来UserControls的这个要求?

silverlight user-controls code-behind silverlight-3.0

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

const在函数中的位置

之前曾问过一个类似的问题,但没有一个答案真正提供了我想要的东西.

我无法确定功能应该位于哪里.我知道很多人把它们放在顶部,但是如果你把它们尽可能地放在它们的使用位置,你就会减少代码量.即

void f() {
  const FOO = 3;
  ...// some code
  if ( bar > FOO ) {
    ...// do stuff
  }
}
Run Code Online (Sandbox Code Playgroud)

要么

void f() {
  ...// some code
  const FOO = 3;
  if ( bar > FOO ) {
    ...// do stuff
  }
}
Run Code Online (Sandbox Code Playgroud)

我倾向于在小函数中使用顶部的const,并且在大函数中尽可能地保持跨度,但我想知道其他人的风格/想法是什么.

c++ const

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

在Bash中解析日期

你如何解析bash中的日期,将不同的字段(年,月,日,小时,分钟,秒)分成不同的变量?

日期格式为: YYYY-MM-DD hh:mm:ss

bash parsing date

54
推荐指数
5
解决办法
8万
查看次数

为什么C#泛型不能像C++模板中那样从泛型类型参数中派生出来?

为什么C#泛型不能像C++模板中那样从泛型类型参数中派生出来?我的意思是我知道这是不可能的,因为CLR不支持这个,但为什么呢?

我知道C++模板和C#泛型之间的深刻差异 - 前者是编译时实体,必须在编译期间解析,而后者是一流的运行时实体.

不过,我没有看到的原因,为什么CLR的设计者并没有拿出一个方案,该方案将最终使CLR泛型类型从泛型类型参数的一个派生.毕竟,这将是非常有用的功能,我个人非常想念它.

编辑:

我想知道一个核心问题,解决这个问题会产生如此高的代价来实现这个功能,这个功能证明它还没有得到实施.例如,检查这个虚构的声明:

class C<T> : T
{
}
Run Code Online (Sandbox Code Playgroud)

正如Eric Lippert已经注意到" 如果T是一个结构怎么办?如果T是一个密封的类型怎么办?如果T是一个接口类型怎么办?如果T是C怎么办?如果T是从C语言中得到什么怎么办?"如果T是带抽象方法的抽象类型?如果T的可访问性低于C怎么办?如果T是System.ValueType怎么办?(你能否有一个继承自System.ValueType的非结构?)System.Delegate怎么样? System.Enum等等? "

正如埃里克继续说的那样," 那些是容易的,显而易见的 ".的确,他是对的.我感兴趣的是一个既不容易也不明显的问题的具体例子,这个问题很难解决.

.net c# generics clr

42
推荐指数
4
解决办法
2万
查看次数

json_encode网址失败

有没有办法绕过这个bug

echo json_encode(array('url'=>'/foo/bar'));
{"url":"\/foo\/bar"}
Run Code Online (Sandbox Code Playgroud)

我使用Zend_Json和Zend_Json_Expr,所以我甚至可以在我的js对象中获得回调函数 - 但是我无法获得一个可用格式的url!

echo Zend_Json::encode(array(
                         'url'=>new Zend_Json_Expr('/foo/bar'),
                       ), false,
                       array(
                         'enableJsonExprFinder' => true),
                       ));
Run Code Online (Sandbox Code Playgroud)

生产:

{"url":/foo/bar}
Run Code Online (Sandbox Code Playgroud)

这显然也不对..

无论如何得到:

{"url":"/foo/bar"}
Run Code Online (Sandbox Code Playgroud)

没有做任何荒谬的事情,比如在将它发送到stdio之前找到一种方法将其重新出发?

php json zend-framework

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

是否存在KeyedCollection的一般具体实现?

System.Collections.ObjectModel.KeyedCollection类是一个非常有用的替代System.Collections.Generic.Dictionary,尤其是当关键数据是存储对象的一部分,或者您希望能够枚举顺序的项目.不幸的是,这个类是抽象的,我无法在核心.NET框架中找到一般的具体实现.

框架的设计Guidlines书表明,一个具体的实现为抽象类型(第4.4节抽象类设计)来提供.为什么框架设计者会忽略这样一个有用的类的一般具体实现,特别是当它可以通过简单地暴露一个接受并将Converter从项目存储到其键的构造函数来提供时:

public class ConcreteKeyedCollection<TKey, TItem> : KeyedCollection<TKey, TItem>
{
    private Converter<TItem, TKey> getKeyForItem = null;
    public ConcreteKeyedCollection(Converter<TItem, TKey> getKeyForItem)
    {
        if (getKeyForItem == null) { throw new ArgumentNullException("getKeyForItem"); }
        this.getKeyForItem = getKeyForItem;
    }
    protected override TKey GetKeyForItem(TItem item)
    {
        return this.getKeyForItem(item);
    }
}
Run Code Online (Sandbox Code Playgroud)

.net collections

14
推荐指数
1
解决办法
3099
查看次数

用于将数据从一个表复制到另一个表的存储过程

的表对格式TABLETABLE_TWIN现在

  • TABLE 是包含大量数据的主表
  • TABLE_TWIN 是一个表与完全相同的字段与一些数据(不同的数据)

现在我想将所有行复制TABLE_TWINTABLE使用存储过程.我有很多这样的表,并且可以像存储过程一样将表名作为参数,以便我可以对每个表对使用相同的过程.我不想写INSERT语句,因为这些表每个都有大约50个属性.

我不熟悉PL/SQL所以我需要一些帮助.

谢谢!

oracle plsql stored-procedures

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

C++:newbie初始化列表问题

新手在这里.我在看公司代码.

似乎A类中没有成员变量但是在A的构造函数中它初始化了一个对象B,即使类A不包含任何类型B的成员变量(或任何成员变量!).

我想我甚至不能理解问题......所以这里发生了什么!?我的直觉是你甚至在尝试初始化它之前需要一个变量.如何在没有对象的情况下初始化对象有可能(或者有什么用呢)?

.H:

class A: public B
{
public:
     A(bool r = true);
     virtual ~A;

private:
}
Run Code Online (Sandbox Code Playgroud)

的.cpp:

A::A(bool r) : B(r ? B::someEnumeration : B::anotherEnumeration)
{
}

A::~A()
{
}
Run Code Online (Sandbox Code Playgroud)

请帮忙.

谢谢,jbu

c++ list initializer

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

正则表达式从查询字符串中删除一个参数

我正在寻找一个正则表达式来从查询字符串中删除单个参数,我想在可能的情况下在单个正则表达式中执行此操作.

说我想删除foo参数.现在我用这个:

/&?foo\=[^&]+/
Run Code Online (Sandbox Code Playgroud)

只要foo不是查询字符串中的第一个参数,它就可以工作.如果是,那么我的新查询字符串以&符号开头.(例如," foo=123&bar=456"给出" "的结果&bar=456.)现在,我只是在正则表达式后检查,如果查询字符串以&符号开头,如果是,则将其砍掉.

示例边缘情况:

Input                    |  Expected Output
-------------------------+--------------------
foo=123                  |  (empty string)
foo=123&bar=456          |  bar=456
bar=456&foo=123          |  bar=456
abc=789&foo=123&bar=456  |  abc=789&bar=456
Run Code Online (Sandbox Code Playgroud)

编辑

好的,正如评论中指出的那样,有更多的边缘案例比我最初考虑的更多.我得到以下正则表达式与他们一起工作:

/&foo(\=[^&]*)?(?=&|$)|^foo(\=[^&]*)?(&|$)/
Run Code Online (Sandbox Code Playgroud)

这是从马克拜尔斯的回答中修改,这就是为什么我接受那个,但罗杰佩特的投入也帮助了很多.

以下是我正在使用的全套测试用例,以及一个测试它们的Javascript代码段:

$(function() {
    var regex = /&foo(\=[^&]*)?(?=&|$)|^foo(\=[^&]*)?(&|$)/;
    
    var escapeHtml = function (str) {
        var map = {
          '&': '&amp;',
          '<': '&lt;',
          '>': '&gt;',
          '"': '&quot;',
          "'": '&#039;'
        };
        
        return str.replace(/[&<>"']/g, function(m) { return map[m]; });
    };

    
    //test cases
    var tests …
Run Code Online (Sandbox Code Playgroud)

regex query-string

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