问题列表 - 第43393页

在Python中查找所有出现的子字符串

Python已经string.find()并且string.rfind()在字符串中获取子字符串的索引.

我想知道,也许有类似的东西string.find_all()可以返回所有已创建的索引(不仅从开始或从头到尾)?

例如:

string = "test test test test"

print string.find('test') # 0
print string.rfind('test') # 15

#this is the goal
print string.find_all('test') # [0,5,10,15]
Run Code Online (Sandbox Code Playgroud)

python regex string

325
推荐指数
12
解决办法
39万
查看次数

如何有效地计算mathematica中的递归关系?

我有一个递归来解决.

f(m,n)=Sum[f[m - 1, n - 1 - i] + f[m - 3, n - 5 - i], {i, 2, n - 2*m + 2}] + f[m - 1, n - 3] + f[m - 3, n - 7]
f(0,n)=1, f(1,n)=n
Run Code Online (Sandbox Code Playgroud)

但是,以下mma代码效率非常低

f[m_, n_] := Module[{},
  If[m < 0, Return[0];];
  If[m == 0, Return[1];];
  If[m == 1, Return[n];];
  Return[Sum[f[m - 1, n - 1 - i] + f[m - 3, n - 5 - i], {i, 2, n - 2*m …
Run Code Online (Sandbox Code Playgroud)

recurrence wolfram-mathematica

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

当URL与模式匹配时,配置nginx以返回404

我希望nginx在收到与模式匹配的请求时返回404代码,例如/test/*.如何配置nginx来做到这一点?

webserver nginx

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

永久重定向传统路由ASP.Net MVC中的静态文件

我们旧的ASP.net站点将静态映像存储在名为/ images的根目录下的子目录中.

我们新的ASP.net MVC站点将这些图像存储在/ Content/Images的新布局中

我已经更改了网站中的所有页面以应对新的文件夹结构,但我想将旧的静态图像设置为永久重定向到新位置.

我们的网站是托管的,我无法控制IIS,那么解决这个问题的最佳方法是什么?

asp.net asp.net-mvc asp.net-mvc-routing asp.net-mvc-3

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

如何在Spring Security/SpringMVC中手动设置经过身份验证的用户

在新用户提交"新帐户"表单后,我想手动将该用户登录,这样他们就不必在后续页面上登录.

通过spring安全拦截器的普通表单登录页面工作得很好.

在新帐户形式的控制器中,我正在创建UsernamePasswordAuthenticationToken并手动在SecurityContext中设置它:

SecurityContextHolder.getContext().setAuthentication(authentication);
Run Code Online (Sandbox Code Playgroud)

在同一页面上,我稍后检查用户是否已登录:

SecurityContextHolder.getContext().getAuthentication().getAuthorities();
Run Code Online (Sandbox Code Playgroud)

这将返回我之前在身份验证中设置的权限.一切都很好.

但是当我加载的下一页上调用相同的代码时,身份验证令牌就是UserAnonymous.

我不清楚为什么它没有保留我在上一个请求中设置的身份验证.有什么想法吗?

  • 是否与会话ID未正确设置有关?
  • 有什么东西可能会以某种方式覆盖我的身份验证吗?
  • 也许我只需要另一步来保存身份验证?
  • 或者我需要做些什么才能在整个会话中声明身份验证而不是单个请求?

只是寻找一些可能有助于我了解这里发生了什么的想法.

java authentication spring-mvc spring-security

102
推荐指数
5
解决办法
16万
查看次数

在Java中包装C/C++

我用C/C++开发应用程序/程序.我更熟悉这两种语言,喜欢成为C++开发人员.我想知道如何创建一个包含所有C++代码的Java程序.

我的意思是,我想在Java类中包装我所有的C++代码(已经开发).但无能为力如何做到这一点.

请发布您在Java中集成C++的响应或方法/步骤.(使用JNI就是这样,但我无法在www上弄清楚如何使用它)

仅供参考,我使用Eclipse IDE进行开发.

我应该在项目工作区中包含哪些包和哪些包?

c++ java eclipse java-native-interface

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

最终嵌套在Exceptions中的行为

今天在工作中,我不得不查看一个类似于这个模拟示例的代码片段.

package test;

import java.io.IOException;
import org.apache.log4j.Logger;

public class ExceptionTester {

    public static Logger logger = Logger.getLogger(ExceptionTester.class);

public void test() throws IOException {
    new IOException();
}

public static void main(String[] args) {
    ExceptionTester comparator = new ExceptionTester();
    try {
        try {
            comparator.test();
        } finally {
            System.out.println("Finally 1");
        }
    } catch(IOException ex) {
        logger.error("Exception happened" ex);
            // also close opened resources
    } 
    System.out.println("Exiting out of the program");
}
Run Code Online (Sandbox Code Playgroud)

}

try

catch

它正在打印以下输出.我期望编译错误,因为内部IOException没有catch块.

Finally 1
Exiting out of …

java

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

Postgresql序列

当我删除Postgresql表中的所有记录,然后尝试重置序列以在插入时启动编号为1的新记录时,我得到不同的结果:

SELECT setval('tblname_id_seq', (SELECT COALESCE(MAX(id),1) FROM tblname));
Run Code Online (Sandbox Code Playgroud)

这会将序列的当前值设置为1,但是NEXT记录(实际上是第一个,因为还没有记录)得到数字2!

并且我无法将其设置为0,因为序列中的最小值为1!

我用的时候:

ALTER SEQUENCE tblname_id_seq RESTART WITH 1;
Run Code Online (Sandbox Code Playgroud)

插入的第一条记录实际上是1号!但是上面的代码不接受SELECT作为值而不是1.

我希望在没有记录的情况下将序列重置为数字1,然后第一个记录应该从1开始.但是当表中已有记录时,我想重置序列,以便插入的下一条记录将获得{最高} +1

有没有人有明确的解决方案?

postgresql sequence reset

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

C的数据结构和算法手册

除了Thomas Standish的数据结构,算法和软件原理之外,什么是C的流行/良好的数据结构和算法分析书.

c

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

C#编译器是否无法按预期的返回类型推断方法类型参数?

这对我来说似乎很奇怪,但我记得一个帖子,Eric Lippert评论了基于返回类型的C#重载方法无法(通过设计,或者至少是惯例,我认为),所以也许它有一些与之相关的复杂方式.

有什么理由不起作用:

public static T Test<T>() where T : new()
{
    return new T();
}

// Elsewhere
SomeObject myObj = Test();
Run Code Online (Sandbox Code Playgroud)

但这样做:

 var myObj = Test<SomeObject>();
Run Code Online (Sandbox Code Playgroud)

从某个角度看,它们都很好,因为你不是在重复自己(以非常小的方式),但这只是编译器的不同传递?

c# type-inference

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