小编Tom*_*itt的帖子

使用preg_match_all从字符串中提取单词

我对正则表达式不好,但我想用它来从字符串中提取单词.

我需要的单词应该至少有4个字符,提供的字符串可以是utf8.

示例字符串:

Sus azahares presentangruesospétalosblancosteñidosderosaovioláceoenla parte externa,con numerosos estambres(20-40).

期望的输出:

Array(
    [0] => azahares
    [1] => presentan
    [2] => gruesos
    [3] => pétalos
    [4] => blancos
    [5] => teñidos
    [6] => rosa
    [7] => violáceo
    [8] => parte
    [9] => externa
    [10] => numerosos
    [11] => estambres
)
Run Code Online (Sandbox Code Playgroud)

php regex string keyword

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

Go:在 exec.Command 中使用字符串时出现奇怪的结果

我有一个处理 Linux CLI 命令及其参数的 Go 函数:

func cmd(cmd string, args ...string) ([]byte, error) {
    path, err := exec.Command("/usr/bin/which", cmd).Output()
    if err != nil {
        return []byte(""), err
    }
    response, err := exec.Command(string(path), args...).Output()
    if err != nil {
        response = []byte("Unknown")
    }
    return response, err
}
Run Code Online (Sandbox Code Playgroud)

由以下内容调用:

func main() {
    uname, err := cmd("uname", "-a")
    fmt.Println(string(uname))
}
Run Code Online (Sandbox Code Playgroud)

“which”命令返回二进制文件的正确路径,但是当它尝试使用动态路径运行第二个 exec 命令时,返回始终为:

fork/exec /usr/bin/uname
: no such file or directory
exit status 1
Run Code Online (Sandbox Code Playgroud)

然而,如果第二个 exec 命令是硬编码的,则一切都会按预期工作并打印 uname:

response, err := exec.Command("/usr/bin/uname", args...).Output() …
Run Code Online (Sandbox Code Playgroud)

linux string exec go

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

在 Heroku 上部署 Go 应用程序后面临的问题

我已经在 Heroku 上部署了 Go 应用程序,但是在点击 url 时......它没有给出正确的响应。Heroku 日志看起来像这样:

2015-06-27T10:43:06.839094+00:00 heroku[web.1]: Starting process with command `FlickrImage`
2015-06-27T10:43:08.998400+00:00 heroku[web.1]: State changed from starting to crashed
2015-06-27T10:43:08.998400+00:00 heroku[web.1]: State changed from crashed to starting
2015-06-27T10:43:08.985737+00:00 heroku[web.1]: Process exited with status 0
2015-06-27T10:43:10.795684+00:00 heroku[web.1]: Starting process with command `FlickrImage`
2015-06-27T10:43:13.837301+00:00 heroku[web.1]: Process exited with status 0
2015-06-27T10:43:13.850141+00:00 heroku[web.1]: State changed from starting to crashed
2015-06-27T10:44:41.914412+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/Index" host=morning-ridge-1365.herokuapp.com request_id=89d2e794-a725-4ddf-b437-dbcbd988428c fwd="202.12.83.44" dyno= connect= service= status=503 bytes=
Run Code Online (Sandbox Code Playgroud)

FlickrImage 是我的 go 文件,我创建了一个包含“web: …

heroku go web-deployment web server

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

查找2D数组中所有元素的总和

尝试创建一个可以找到所有元素总和的2D数组.因为我使用驱动程序检查我的工作,所以我没有将数字输入2D数组.到目前为止,我有这个 - 但它不会成功.我究竟做错了什么?

public static double sum2d (double[ ][ ] array2d)  
{
    int sum = 0;
    for (int row=0; row < array2d.length; row++)
    {
        for (int col=0; col < array2d[row].length; col++)
        {
            sum = sum + array2d [row][col];
        }
    }

    return sum;
}
Run Code Online (Sandbox Code Playgroud)

java arrays

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

cloudformation 未在 api 网关中附加请求的路径参数

我正在尝试在 cloudformation 中创建 api 网关。一切都很好,除了当我指定路径参数 url 时,我可以在创建的 api 网关中看到它。这是我的 cfn 代码:

GetMethod:
Type: AWS::ApiGateway::Method
Properties:
  AuthorizationType: NONE
  HttpMethod: GET
  Integration:
    Type: HTTP
    IntegrationHttpMethod: GET
    Uri:
      Fn::Join:
      - ''
      - - "http://"
        - Fn::ImportValue: !Sub ${project}-${EnvironmentApp}-bn-user-endpoint-url
        - "/users"
        - "/{users}"
    IntegrationResponses:
    - StatusCode: 200
      ResponseParameters:
        method.response.header.Access-Control-Allow-Origin: "'*'"
      ResponseTemplates:
        application/json: ''
    RequestTemplates:
      application/json: ''
  RequestParameters:
    method.request.path.users: true
  ResourceId: !Ref UsersPathParam
  RestApiId:
    Ref: RestApi
  MethodResponses:
  - StatusCode: 200
    ResponseParameters:
        method.response.header.Access-Control-Allow-Origin: true
Run Code Online (Sandbox Code Playgroud)

如果您在上面的代码中注意到我特别要求名为 users 的路径参数:

RequestParameters:
    method.request.path.users: true
Run Code Online (Sandbox Code Playgroud)

此外,您可以看到创建的 API 网关没有在附加图像中设置路径参数。有任何想法吗?

支持图片[1]

amazon-web-services aws-cloudformation aws-api-gateway

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

执行GET请求后,程序在连续超时后停止

我正在制作一个抓取html,css和js页面的爬虫.爬虫是一个典型的爬虫,有4个go-routine同时运行以获取资源.为了学习,我一直在使用3个测试站点.爬虫工作正常并显示程序完成日志,同时测试其中两个.

然而,在第3个网站中,在获取css链接时发生了太多超时.这最终导致我的程序停止.它获取链接但在连续20多次超时后,程序停止显示日志.基本上它停止了.我不认为这是事件日志控制台的问题.

我需要单独处理超时吗?我没有发布完整的代码,因为它与我正在寻找的概念性答案无关.但是代码是这样的:

for {
    site, more := <-sites
    if more {
        url, err := url.Parse(site)
        if err != nil {
            continue
        }
        response, error := http.Get(url.String())

        if error != nil {
            fmt.Println("There was an error with Get request: ", error.Error())
            continue
        }

        // Crawl function
    }
}
Run Code Online (Sandbox Code Playgroud)

timeout get http go

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

Docker和Angular CLI应用程序

我正在尝试使用Docker来容纳使用Angular CLI构建的应用程序.它只是您使用时出现的默认文件,ng new以便我可以学习如何执行此操作.我正在尝试使用两步构建,其中第一步运行ng-build --prod --build-optimizer,然后将./dist文件夹中的结果放入具有为应用程序提供服务的Nginx的容器中.我知道如果我从我的命令行手动构建应用程序,然后运行一个Dockerfile只有第二步,我可以让Angular应用程序服务,但我希望Docker能为我做到这一点.

这是我的Dockerfile:

FROM node:8.9-alpine as angular-built
COPY package.json package.json
RUN npm install
COPY . .
RUN ng build --prod --build-optimizer

FROM nginx:alpine
LABEL author="Preston Lamb"
COPY --from=angular-built ./dist /usr/share/nginx/html
EXPOSE 80 443
ENTRYPOINT [ "nginx", "-g", "daemon off;" ]
Run Code Online (Sandbox Code Playgroud)

我已尝试在Dockerfile的第一步使用node:8.9-alpine基本映像和johnpapa/angular-cli基本映像.一切都有效,直到RUN ng build --prod --build-optimizer命令,此时它失败并出现此错误:

无法读取null的属性'config'TypeError:无法在Class.run中读取属性'config'的null(/node_modules/@angular/cli/tasks/build.js:15:56)(/ node_modules/@) angular/cli/commands/build.js:216:26)在Class.validateAndRun的新Promise()处解析(/node_modules/@angular/cli/ember-cli/lib/models/command.js:261:20) Promise.resolve.then.then(/ node_modules/@ angular/cli/ember-cli/lib/cli/cli.js:140:24)at

谷歌搜索后,我发现这是因为CLI无法找到该.angular-cli.json文件.然后我读到默认情况下,Linux不会复制隐藏文件,所以它不会复制.angular-cli.json文件,而这就是错误出现的地方.

我的下一步是试图强制复制该文件.我尝试了以下两种方法,在COPY . .命令之前执行此步骤:

COPY .angular-cli.json .angular-cli.json
Run Code Online (Sandbox Code Playgroud)

和 …

docker angular

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