小编new*_*rey的帖子

正则表达式的含义if($ _ =〜/ - \n /)

我是perl脚本的初学者.我知道连字符( - )用于指定范围.

但如果在表达式的开头提到它呢?

例:

if ($_ =~ /-\n/)
//do something
Run Code Online (Sandbox Code Playgroud)

如何解读上面的代码?

"如果参数等于换行范围"?(不,这是奇怪的理解: - /)

请帮忙.

regex perl

5
推荐指数
3
解决办法
734
查看次数

PHP:强制转换为(数组)和返回类型:数组不一样?

我在PHP中有以下问题:

print_r()说它是相同的,gettype()相同的类型,但最后的输出不适用于两种情况,虽然它们应该是相同的!

这看起来很奇怪.

代码和输出:

$docdatau = get_object_vars(json_decode($docdata));
$docdatau2 = (array)json_decode($docdata);

echo "1\n";
echo gettype($docdatau);
echo "\n";
echo "--------------------------------------\n";
print_r($docdatau);
echo "--------------------------------------\n";

echo "2\n";
echo gettype($docdatau2);
echo "\n";
echo "--------------------------------------\n";
print_r($docdatau2);

echo "out1\n";
echo "--------------------------------------\n";
print_r($docdatau[0]);
echo "out2\n";
echo "--------------------------------------\n";
print_r($docdatau2[0]);
Run Code Online (Sandbox Code Playgroud)

输出:

1
array
--------------------------------------
Array
(

    [0] => stdClass Object
        (
            [produkt] => Produkt 2
            [laufzeit] => 24
            [addtext] => sdsd
            [provision] => 39
        )

    [1] => stdClass Object
        (
            [produkt] => Produkt 1
            [laufzeit] => 
            [addtext] …
Run Code Online (Sandbox Code Playgroud)

php variables types casting return-type

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

在最佳匹配上排序SQL查询

我得到了一个从我的查询返回的结果列表,我想在最佳匹配上订购.我会尽量保持清醒,但如果事情不够清楚,请告诉我,我会尽力使其更清楚.

用户已经输入了一个名为的设置列表findsettings.有了这些,findsettings我正在寻找产品.这一切顺利,直到他应该找出最佳匹配.

有几个领域,如min_review, max_price, allows_pets, etc.

我想订购.例如,他需要先订购的产品有min_review of 40%,然后max_price = 10.00allows_pets = 0.你可以用一个OR,但我希望不安静匹配的结果也显示,只在列表的底部.所以基本上他应该首先显示最佳匹配,然后是第二个,第三个等,直到匹配最少的产品.

我不知道如何处理这个问题,所以我希望你能帮助我解决这个问题.

php mysql sql database

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

如何退出while循环?

#include <stdio.h>
main(void) {
   char ch;
   while (1) {   
      if ((ch = getchar()) != EOF) 
      {
         break;
      }
      putchar(ch);
   }
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

我怎么逃避这个while?我曾尝试使用EOF但它没有用.

c while-loop

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

在Javascript中切换数组排序(从上升到下降,反之亦然)

我像这样排序我的数组:

array.sort((function(index) {
    return function(a, b){
        return (a[index] === b[index] ? 0 : (a[index] < b[index] ? -1 :1));
    };
})(0));
Run Code Online (Sandbox Code Playgroud)

如您所见,它按升序排序.

我的问题是如何切换排序?例如,如果它已经按升序排列,那么我该如何按降序对其进行排序,反之亦然?

我知道要降序排序我需要修改这样的代码:

array.sort((function(index) {
    return function(a, b) {
        return (a[index] === b[index] ? 0 : (a[index] < b[index] ? 1 :-1));
    };
})(0));
Run Code Online (Sandbox Code Playgroud)

但我不知道如何切换.

javascript

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

x86程序集"推送OFFSET ......"和助记符?

我试图通过在Visual Studio 2012 Express中创建小型C程序,然后在Immunity Debugger中对它们进行反汇编来自学一些程序.但我显然遇到了一些我不理解的事情:

012A13F0   68 58582A01      PUSH OFFSET Hello_Wo.??_C@_0M@KPLPPDAC@H>; ASCII "Hello World"
012A13F5   FF15 BC922A01    CALL DWORD PTR DS:[<&MSVCR110D.printf>]  ; MSVCR110.printf
Run Code Online (Sandbox Code Playgroud)

我对这两个指令感到困惑.事实上,对于我来说,操作码比调试器描述的实际指令更有意义.

显然,第一条指令将地址压入堆栈.当我按照转储中的地址时,它会显示一个区域,其中包含一些构成字符串的十六进制数Hello World.我相信这是.data segment.我对么?

并且; 我想Hello_Wo.??_C@_0M@... 这只是调试器提供给我的视觉辅助工具,所以我可以更好地理解这是......某事......

OFFSET在这个推送指令中意味着什么?我无法在谷歌上找到任何东西.

我还想问一下另一条指令......

据我了解,它试图通过使用位于该地址的4个字节的值来调用一个子程序DS:[102A92BC] (&MSVCR110D...),作为呼叫的地址

调试器告诉我DS:[102A92BC] = 5C0A93A0.并且该存储器范围保留给MSVCR110 .text segment.

我很抱歉,但我很难提出这个问题,因为我甚至不确定我应该怎么问.我希望你明白.谢谢你

偏离主题:我有一个最后一个有点愚蠢和偏离主题的问题,但我希望你不要介意:你不应该把数据段作为反汇编代码读取,不是吗?导入数据段让我在搜索时感到困惑5C0A93A0.

assembly disassembly visual-studio-2012

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

DOMParser将<script>标记附加到<head>/<body>但不执行

我试图通过DOMParser将字符串解析为完整的HTML文档,然后用处理过的节点覆盖当前页面.该字符串包含完整的标记,包括<!doctype>,<html>,<head><body>节点.

// parse the string into a DOMDocument element:
var parser = new DOMParser();
var doc = parser.parseFromString(data, 'text/html');

// set the parsed head/body innerHTML contents into the current page's innerHTML
document.getElementsByTagName('head')[0].innerHTML = doc.getElementsByTagName('head')[0].innerHTML;
document.getElementsByTagName('body')[0].innerHTML = doc.getElementsByTagName('body')[0].innerHTML;
Run Code Online (Sandbox Code Playgroud)

这是因为它成功地获取了已解析的HTML节点并在页面上呈现它们; 但是,解析后的字符串中<script><head><body>节点中存在的任何标记都无法执行= [.直接使用html标签进行测试(与head/ 相反body)会产生相同的结果.

我也尝试过使用.appendChild()而不是.innerHTML()改变:

var elementHtml = document.getElementsByTagName('html')[0];

// remove the existing head/body nodes from the page
while …
Run Code Online (Sandbox Code Playgroud)

javascript domparser

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

在个别路线上实施头盔 csp

我正在创建一个示例 Express 应用程序来演示 Content-Security-Policy (CSP) 标头,并尝试使用helm-csp

头盔 csp 的所有文档都显示它用作标准的第三方中间件通过app.use(csp({ ... }))- 这将 CSP 标头添加到我的应用程序中的每个路由,但我想在单个路由上对其进行自定义。

示例应用程序

var express = require('express');
var http = require('http');
var csp = require('helmet-csp');
var app = express();

app.use(csp({
    directives: {
        frameSrc: ["'none'"]
    }
}));

app.get('/', (request, response) => {
    response.send('hi, :wave: =]');
});

app.get('/frameable', (request, response) => {
    response.send('you can frame me!');
});

http.createServer(app).listen(80, (err) => {
    if (err) {
        return console.log('error', err);
    }
});
Run Code Online (Sandbox Code Playgroud)

有了上面的内容,每条路由都会收到 CSP 标头: …

node.js express content-security-policy helmet.js

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

正则表达式:在记事本++中切换单词位置

我有以下模式的文字:

1 NAME word1 word2 wordn /words/
...
...
1 NAME word1 word2 wordn /words/
Run Code Online (Sandbox Code Playgroud)

我需要一个正则表达式,将其重新排序为:

1 NAME /words/ word1 word2 wordn
...
...
1 NAME /words/ word1 word2 wordn
Run Code Online (Sandbox Code Playgroud)

我试图这样做,notepad++但无法弄清楚正则表达式匹配n个单词,直到该字符/

请帮忙!

regex notepad++

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

如何在python中删除列表的后端?

所以对于课程的一部分,我有一个txt文件的给定输入.基本上,我可以给出一个输入字符串

listy = ["Miko's Lounge", '41.2', '56.7', '99th Ave, NY', '3', '4', '5', '2']
Run Code Online (Sandbox Code Playgroud)

我需要对此输入执行的操作是删除地址,并将列表末尾的数字放入列表中的自己的列表中,就像这样.

["Miko's Lounge", '41.2', '56.7', ['3', '4', '5', '2'] ]
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用删除地址listy.pop(3).但是字符串末尾的数字可能会有所不同!这些代表星级,有些地方的星级评分高于其他地方.有没有我可以从列表中的certian点删除所有索引,就像函数一样slice(),是什么?

我一直在尝试使用range函数的for循环,但它似乎没有正常工作(或我期望它).

listy = ['1', '2', '3', '4', '5']


for i in range( 2 , len(listy)-1 ):
    listy.pop(i)

print listy
Run Code Online (Sandbox Code Playgroud)

我得到的是作为输出:

['1', '2', '4']
Run Code Online (Sandbox Code Playgroud)

当我想要获得更多的东西:

['1', '2']
Run Code Online (Sandbox Code Playgroud)

'4'那里的随机原因是什么?我不明白这个范围的事情!我想念java的简单for循环-_-

python list range

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