Comments (4)
private static String [] getArgsFromCommand (final String requestCommandWithoutBasename) {
final String requestCommandInput = requestCommandWithoutBasename.replaceAll ("\s+-([a-zA-Z0-9])", " -$1 ");
final Matcher matcher = Arguments.ARGS_SPLIT_REGEX.matcher (requestCommandInput);
final List args = new ArrayList<> ();
while (matcher.find ()) {
args.add (ReadArguments.removeSlashes (matcher.group (1).trim ()));
}
return args.toArray (new String [args.size ()]);
}
the regex is ARGS_SPLIT_REGEX is very complex and has to be simplified.
Pattern.compile(expression) creates a method that is executed recursively on matcher.find()
Check this article:
https://www.javaworld.com/article/2077757/core-java/optimizing-regular-expressions-in-java.html?page=4
"A note about the StackOverflowError"
from curl.
Hi,
I tried to reproduce the flexible parsing that is available under curl+bash :
https://regex101.com/r/B5Rga8/16/tests
Can you try optimizing that regex for me ?
The unit tests in this example should continue to work
from curl.
unfortunately I am not an regex expert, that's why i found an workaround to that problem:
curl -X POST "http://localhost:9200/default_ddcm/ApplicationProfile/m683592e896e4d32b086c3468252fe55/_update" -H 'Content-Type: application/json' --data-binary @path/to/the/payload,json
and now the regex is applied to a simple data source
from curl.
I did not dare to ask you to isolate the request body in a file because you could have some good reasons not to do that, but that is definitely something you can do.
Thanks for the feedback and good luck.
from curl.
Related Issues (20)
- way to get the response HOT 2
- stackoverflowErorr for long curl, where we are calling `getArgsFromCommand()` HOT 1
- Argument -L doesn't work HOT 6
- add option for keystore password HOT 7
- Some Assistance re: Curl Parameters. HOT 2
- use dataurlencode HOT 4
- -k parameter for unsupported TLS algorithms does not work HOT 7
- Can not upload a file HOT 6
- Upload base64 file stack overflow error HOT 4
- Streaming HOT 2
- sends two user-agent HOT 3
- Error: Invalid character found in method name [0x160x030x010x.....E0xe90x05I0x1c0x1e ]. HTTP method names must be tokens HOT 3
- --data-raw can not support HOT 4
- java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64 HOT 2
- Some help please. HOT 10
- sftp curl example HOT 1
- -T parameter support missing HOT 1
- proxy bug HOT 1
- ReadArguments OutOfMemoryError bug HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from curl.