标签: brackets

如果我在名称中带方括号的输入上使用jQuery serialize(),为什么会出现这个分号?

我有以下HTML:

<input type="checkbox" id="options_1" value="options_1" name="options[]">  
<input type="checkbox" id="options_2" value="options_2" name="options[]">  
<input type="checkbox" id="options_3" value="options_3" name="options[]">  
Run Code Online (Sandbox Code Playgroud)

我检查前两个选项并通过jQuery中的ajax将其发送到服务器:

$.ajax({
    type: "POST",
    url: "myfile.php",
    data: {
        'options':$('input[name="options[]"]').serialize()
    },
    dataType: 'json',
    beforeSend: function(){
           //do some stuff
    },
    success: function(msg){
        //do some stuff
    }
});
Run Code Online (Sandbox Code Playgroud)

Firebug向我显示已发布的数据:

期权 期权%5B%5D = options_1&options%5B%5D = options_2
到目前为止,非常好.

在myfile.php中我得到了如下的POST变量:

$options = $_POST['options'];
Run Code Online (Sandbox Code Playgroud)

现在,当我回显$ options时,我得到了这个:

"options[]=options_1&options;[]=options_2"
Run Code Online (Sandbox Code Playgroud)

第二对括号前面的分号是从哪里来的?这真让我抓狂.

我已经在POST数据上使用了utf8_decode以及urldecoderawurldecode.没有什么变化.我还逃过了ajax调用中的方括号,如下所示:

data: {
    'options':$('input[name="options\\[\\]"]').serialize()
},
Run Code Online (Sandbox Code Playgroud)

这也没有帮助.任何人的想法?

php ajax jquery serialization brackets

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

PHP中这种语法的特殊用法?(三角'角括号')

给出以下代码:

$myString = <<<script
   .
   .
   .
 script;
Run Code Online (Sandbox Code Playgroud)

感谢这个问题的原始版本的答案,我理解<<<是heredoc语法,被视为双引号而不需要转义引号.

更进一步,这是如何最好地利用?具体来说,这是否应该减轻处理包含代码语法的混合引用字符串的压力?

I,E ..

attribute="name-like string" attribute="property: 'value("value")';"
Run Code Online (Sandbox Code Playgroud)

想到这可能是有用的(如果以我现在猜测的方式实现),特别是在处理更大的复杂性和/或寻找代码注入时.再次,寻找heredoc特别有用或可利用的任何场景.

css php string brackets heredoc

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

Visual Studio 2010 + resharper支架缩进问题

我正在使用VS 2010 + resharper,我已经厌倦了在代码中重新格式化支架缩进,因为我想要它.例如,如果我有像这样的代码:

operators.Keys
    .ToList()
    .ForEach(k => filters
        .AddRange(CustomHtmlHelpers.GetIdAndValueListByPrefix(queryString, k)
            .Select(t => new QueryFilter()
            {
                Operation = operators[k],
                PropertyName = t.Item1,
                Value = t.Item2
            })))
Run Code Online (Sandbox Code Playgroud)

如果我把;VS(或resharper)'修复'括号缩进放在最后,那么代码就像:

operators.Keys
    .ToList()
    .ForEach(k => filters
                        .AddRange(CustomHtmlHelpers.GetIdAndValueListByPrefix(queryString, k)
                                    .Select(t => new QueryFilter()
                                    {
                                        Operation = operators[k],
                                        PropertyName = t.Item1,
                                        Value = t.Item2
                                    })));
Run Code Online (Sandbox Code Playgroud)

如果我使用resharper的代码清理,也会发生同样的情况.我可能会关闭自动代码重新格式化,;但在其他情况下我需要它.我尝试在VS和resharper设置中更改代码格式化选项,但从未得到我想要的缩进.

我如何配置vs或resharper,以便它不会执行多个选项卡格式化?或者也许我可以使用其他插件(与r#一起)专门用于此目的?

编辑:对于任何对这个问题感兴趣的人来说,在r#论坛http://devnet.jetbrains.net/thread/304794中有同样的问题.任何想要从r#看到更好的嵌套代码缩进的人都欢迎在这里投票赞成http ://youtrack.jetbrains.net/issue/RSRP-88220

c# resharper code-formatting brackets visual-studio-2010

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

〜[]构造如何在JavaScript中工作?

我遇到了一个无法解释的JavaScript代码.例如:

  • +[]===0
  • -[]===0
  • ~[]===-1
  • ~-~[]===-2
  • ~-~-~-~-~[]===-5
  • ~-~-~-~-~[]+~[]===-6
  • ~+~[]===0
  • ~+~+~[]===-1
  • ~+~+~+~[]===0

你能解释一下这些表达的逻辑吗?

javascript brackets tilde

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

如何在正则表达式中使用双括号?

双方括号在正则表达式中意味着什么?我对以下示例感到困惑:

/[[^abc]]/

/[^abc]/
Run Code Online (Sandbox Code Playgroud)

我正在使用Rubular进行测试,但我发现双支架和单支架之间没有任何区别.

ruby regex syntax brackets

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

正则表达式(正常或嵌套括号)

因此,我对全新的正则表达式世界完全陌生.基本上,我正在使用Gedit API创建一个新的自定义语言规范(从C#派生)用于语法高亮(对于Byond的DM).在DM中的转义字符中,您必须使用[variable]作为转义语法,这很简单.但是,它也可以嵌套,例如[array/list [index]].(它可以无限嵌套.)我已经查看了其他问题,当他们询问嵌套括号时,它们只表示嵌套,而在这种情况下它可能是/或.

我尝试了几次尝试:

  • \[.*\]产生结果"测试[测试[测试]测试]测试[测试]测试"
  • \[.*?\]产生结果"测试[测试[测试]测试]测试[测试]测试"
  • \[(?:.*)\] 产生结果"测试[测试[测试]测试]测试[测试]测试"
  • \[(?:(?!\[|\]).)*\] 产生结果"测试[测试[测试]测试]测试[测试]测试".这来自/sf/answers/670668491/,但如上所述,只有在内部没有括号时才匹配.

显然我不知道我在这里做的更复杂的匹配,但至少我了解更多来自其他来源的基本操作.

regex pcre nested brackets

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

带有圆括号的正则表达式

我正在尝试编写将接受以下电话号码格式的表达式:

508 736 756
505050505
+48 505 505 505
(+48) 505 505 505
++48 505 505 505
(++48) 505 505 505
(23)692 36 99
23 692 36 99
Run Code Online (Sandbox Code Playgroud)

我写了下面的表达式

^(([+]{0,2}?)?([+]{0,2}?)?([0-9 ]+)?)$
Run Code Online (Sandbox Code Playgroud)

但是,此表达式仅涵盖下面列出的格式:

508 736 756
505050505
+48 505 505 505
++48 505 505 505
23 692 36 99
Run Code Online (Sandbox Code Playgroud)

转义括号字符时出现问题:().这就是我无法涵盖以下格式的原因:

(+48) 505 505 505
(++48) 505 505 505
(23)692 36 99
Run Code Online (Sandbox Code Playgroud)

我尝试用反斜杠逃避它们,但由于某种原因它不起作用.

... [(] [+] {0,2} [)]?...

演示:https://regex101.com/r/hY5tG4/2

php regex brackets escaping preg-match

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

白色空格前后等号,括号等

我使用Visual Studio 2012和插件Visual assist X ver.我有两个问题.

1)当我写等号(=)时,我希望在符号前后自动插入空格(我必须总是按键盘上的空格插入......).可能吗?

例:

int variable=167;
->
int variable = 167;
Run Code Online (Sandbox Code Playgroud)

要么

"=" -> " = "
Run Code Online (Sandbox Code Playgroud)

2)我希望在括号之前和之后以及逗号之前和之后自动插入空格.可能吗?

例:

void fun(int param1,int param2);
->
void fun ( int param1, int param2 );
Run Code Online (Sandbox Code Playgroud)

brackets equals visual-studio-2012

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

令牌";"上的语法错误,{在随机字符串创建者中的此令牌之后的预期

我正在编写代码,使用字母a,b和c生成随机3个字母的字符串.我收到错误消息"令牌上的语法错误";在我创建随机变量的行之后的"{在此令牌后预期"(Random rand = new Random();).我不知道为什么当我看起来很好的时候我会收到这个错误.

我也收到错误消息:语法错误,插入"}"以完成ClassBody,在程序的最后一个括号后.我几乎是积极的所有我的结束括号匹配,所以我不知道这个错误来自哪里.请帮忙!!

 import java.util.*;


 public class Orders {

String alphabet = "abc";
ArrayList<String> list = new ArrayList<String>();
int n = alphabet.length();

Random rand = new Random();
for (int i = 0; i < 10000; i++){
    char a = alphabet.charAt(rand.nextInt(n));
    char b = alphabet.charAt(rand.nextInt(n));
    char c = alphabet.charAt(rand.nextInt(n));

    String s = Character.toString(a) + Character.toString(b) + Character.toString(c); 

    if(list.indexOf(s) == -1){
        list.add(s);
    }
}
 system.out.println(arrayList);
}
Run Code Online (Sandbox Code Playgroud)

java syntax brackets syntax-error

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

方括号是什么意思?在Java中

当它们在前面的方括号时是什么意思double.例如double[] ,在方法中使用return函数时是否有任何特殊的方法可以使用它们.

例如:

public double[] MethodName(){

}
Run Code Online (Sandbox Code Playgroud)

返回值的类型是什么?

java methods double brackets

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