How do I use strstr in Swift to search for a string within a string?
How do I use strstr in Swift to search for a string within a string? I'm not sure how to use UnsafePointer! in Swift. strstr takes two arguments of both that type and returns a value of that type. Is this C or C++? Can I use C or C++ code in Swift, or could I use strstr in Objective-C and use a bridging header?
When I use this code:
var str1 = "Hello"
var str2 = "ll"
var ptr = strstr(str1, str2)
print(ptr)
print(ptr?.pointee)
I get this result:
Optional(0x00006000039bd762)
Optional(0)
swift strstr
|
show 4 more comments
How do I use strstr in Swift to search for a string within a string? I'm not sure how to use UnsafePointer! in Swift. strstr takes two arguments of both that type and returns a value of that type. Is this C or C++? Can I use C or C++ code in Swift, or could I use strstr in Objective-C and use a bridging header?
When I use this code:
var str1 = "Hello"
var str2 = "ll"
var ptr = strstr(str1, str2)
print(ptr)
print(ptr?.pointee)
I get this result:
Optional(0x00006000039bd762)
Optional(0)
swift strstr
6
Why would you want to do that? There isstr1.range(of: str2)
in Swift.
– Martin R
Nov 23 '18 at 17:51
1
I wonder if this is an XY problem. Do you really want to usestrstr()
or is your actual problem how to locate one Swift string within another Swift string?
– Martin R
Nov 23 '18 at 18:05
1
Then the title is misleading, and your question is for example answered here: stackoverflow.com/questions/32305891/….
– Martin R
Nov 23 '18 at 18:09
1
This is indeed an XY problem. If you don't know how to accomplish a task in a new language/OS, ask how to accomplish the task at a high level, not how you would accomplish a specific implementation. If we had simply asked the question you asked you would have gone down the wrong coding path.
– Duncan C
Nov 23 '18 at 18:50
2
The summary: "The XY problem is asking about your attempted solution rather than your actual problem. That is, you are trying to solve problem X, and you think solution Y would work, but instead of asking about X when you run into trouble, you ask about Y."
– Duncan C
Nov 24 '18 at 2:09
|
show 4 more comments
How do I use strstr in Swift to search for a string within a string? I'm not sure how to use UnsafePointer! in Swift. strstr takes two arguments of both that type and returns a value of that type. Is this C or C++? Can I use C or C++ code in Swift, or could I use strstr in Objective-C and use a bridging header?
When I use this code:
var str1 = "Hello"
var str2 = "ll"
var ptr = strstr(str1, str2)
print(ptr)
print(ptr?.pointee)
I get this result:
Optional(0x00006000039bd762)
Optional(0)
swift strstr
How do I use strstr in Swift to search for a string within a string? I'm not sure how to use UnsafePointer! in Swift. strstr takes two arguments of both that type and returns a value of that type. Is this C or C++? Can I use C or C++ code in Swift, or could I use strstr in Objective-C and use a bridging header?
When I use this code:
var str1 = "Hello"
var str2 = "ll"
var ptr = strstr(str1, str2)
print(ptr)
print(ptr?.pointee)
I get this result:
Optional(0x00006000039bd762)
Optional(0)
swift strstr
swift strstr
asked Nov 23 '18 at 17:43
Daniel BrowerDaniel Brower
10510
10510
6
Why would you want to do that? There isstr1.range(of: str2)
in Swift.
– Martin R
Nov 23 '18 at 17:51
1
I wonder if this is an XY problem. Do you really want to usestrstr()
or is your actual problem how to locate one Swift string within another Swift string?
– Martin R
Nov 23 '18 at 18:05
1
Then the title is misleading, and your question is for example answered here: stackoverflow.com/questions/32305891/….
– Martin R
Nov 23 '18 at 18:09
1
This is indeed an XY problem. If you don't know how to accomplish a task in a new language/OS, ask how to accomplish the task at a high level, not how you would accomplish a specific implementation. If we had simply asked the question you asked you would have gone down the wrong coding path.
– Duncan C
Nov 23 '18 at 18:50
2
The summary: "The XY problem is asking about your attempted solution rather than your actual problem. That is, you are trying to solve problem X, and you think solution Y would work, but instead of asking about X when you run into trouble, you ask about Y."
– Duncan C
Nov 24 '18 at 2:09
|
show 4 more comments
6
Why would you want to do that? There isstr1.range(of: str2)
in Swift.
– Martin R
Nov 23 '18 at 17:51
1
I wonder if this is an XY problem. Do you really want to usestrstr()
or is your actual problem how to locate one Swift string within another Swift string?
– Martin R
Nov 23 '18 at 18:05
1
Then the title is misleading, and your question is for example answered here: stackoverflow.com/questions/32305891/….
– Martin R
Nov 23 '18 at 18:09
1
This is indeed an XY problem. If you don't know how to accomplish a task in a new language/OS, ask how to accomplish the task at a high level, not how you would accomplish a specific implementation. If we had simply asked the question you asked you would have gone down the wrong coding path.
– Duncan C
Nov 23 '18 at 18:50
2
The summary: "The XY problem is asking about your attempted solution rather than your actual problem. That is, you are trying to solve problem X, and you think solution Y would work, but instead of asking about X when you run into trouble, you ask about Y."
– Duncan C
Nov 24 '18 at 2:09
6
6
Why would you want to do that? There is
str1.range(of: str2)
in Swift.– Martin R
Nov 23 '18 at 17:51
Why would you want to do that? There is
str1.range(of: str2)
in Swift.– Martin R
Nov 23 '18 at 17:51
1
1
I wonder if this is an XY problem. Do you really want to use
strstr()
or is your actual problem how to locate one Swift string within another Swift string?– Martin R
Nov 23 '18 at 18:05
I wonder if this is an XY problem. Do you really want to use
strstr()
or is your actual problem how to locate one Swift string within another Swift string?– Martin R
Nov 23 '18 at 18:05
1
1
Then the title is misleading, and your question is for example answered here: stackoverflow.com/questions/32305891/….
– Martin R
Nov 23 '18 at 18:09
Then the title is misleading, and your question is for example answered here: stackoverflow.com/questions/32305891/….
– Martin R
Nov 23 '18 at 18:09
1
1
This is indeed an XY problem. If you don't know how to accomplish a task in a new language/OS, ask how to accomplish the task at a high level, not how you would accomplish a specific implementation. If we had simply asked the question you asked you would have gone down the wrong coding path.
– Duncan C
Nov 23 '18 at 18:50
This is indeed an XY problem. If you don't know how to accomplish a task in a new language/OS, ask how to accomplish the task at a high level, not how you would accomplish a specific implementation. If we had simply asked the question you asked you would have gone down the wrong coding path.
– Duncan C
Nov 23 '18 at 18:50
2
2
The summary: "The XY problem is asking about your attempted solution rather than your actual problem. That is, you are trying to solve problem X, and you think solution Y would work, but instead of asking about X when you run into trouble, you ask about Y."
– Duncan C
Nov 24 '18 at 2:09
The summary: "The XY problem is asking about your attempted solution rather than your actual problem. That is, you are trying to solve problem X, and you think solution Y would work, but instead of asking about X when you run into trouble, you ask about Y."
– Duncan C
Nov 24 '18 at 2:09
|
show 4 more comments
1 Answer
1
active
oldest
votes
Swift is a very powerful language. Try out some of its higher level features.
Try putting this in playground.
var word = "Hello"
print(String(format: "Word: %@", word))
let range = word.range(of: "ll")!
print(String(format: "Lower Bound: %d", range.lowerBound.encodedOffset))
print(String(format: "Upper Bound: %d", range.upperBound.encodedOffset))
word = word.replacingOccurrences(of: "ll", with: "")
print(String(format: "Word after replacement: %@", word))
for (i, c) in word.enumerated() {
print(String(format: "Index: %d, Character: %@", i, String(c)))
}
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53451015%2fhow-do-i-use-strstr-in-swift-to-search-for-a-string-within-a-string%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Swift is a very powerful language. Try out some of its higher level features.
Try putting this in playground.
var word = "Hello"
print(String(format: "Word: %@", word))
let range = word.range(of: "ll")!
print(String(format: "Lower Bound: %d", range.lowerBound.encodedOffset))
print(String(format: "Upper Bound: %d", range.upperBound.encodedOffset))
word = word.replacingOccurrences(of: "ll", with: "")
print(String(format: "Word after replacement: %@", word))
for (i, c) in word.enumerated() {
print(String(format: "Index: %d, Character: %@", i, String(c)))
}
add a comment |
Swift is a very powerful language. Try out some of its higher level features.
Try putting this in playground.
var word = "Hello"
print(String(format: "Word: %@", word))
let range = word.range(of: "ll")!
print(String(format: "Lower Bound: %d", range.lowerBound.encodedOffset))
print(String(format: "Upper Bound: %d", range.upperBound.encodedOffset))
word = word.replacingOccurrences(of: "ll", with: "")
print(String(format: "Word after replacement: %@", word))
for (i, c) in word.enumerated() {
print(String(format: "Index: %d, Character: %@", i, String(c)))
}
add a comment |
Swift is a very powerful language. Try out some of its higher level features.
Try putting this in playground.
var word = "Hello"
print(String(format: "Word: %@", word))
let range = word.range(of: "ll")!
print(String(format: "Lower Bound: %d", range.lowerBound.encodedOffset))
print(String(format: "Upper Bound: %d", range.upperBound.encodedOffset))
word = word.replacingOccurrences(of: "ll", with: "")
print(String(format: "Word after replacement: %@", word))
for (i, c) in word.enumerated() {
print(String(format: "Index: %d, Character: %@", i, String(c)))
}
Swift is a very powerful language. Try out some of its higher level features.
Try putting this in playground.
var word = "Hello"
print(String(format: "Word: %@", word))
let range = word.range(of: "ll")!
print(String(format: "Lower Bound: %d", range.lowerBound.encodedOffset))
print(String(format: "Upper Bound: %d", range.upperBound.encodedOffset))
word = word.replacingOccurrences(of: "ll", with: "")
print(String(format: "Word after replacement: %@", word))
for (i, c) in word.enumerated() {
print(String(format: "Index: %d, Character: %@", i, String(c)))
}
answered Nov 23 '18 at 17:55
SethmrSethmr
1,79311332
1,79311332
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53451015%2fhow-do-i-use-strstr-in-swift-to-search-for-a-string-within-a-string%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
6
Why would you want to do that? There is
str1.range(of: str2)
in Swift.– Martin R
Nov 23 '18 at 17:51
1
I wonder if this is an XY problem. Do you really want to use
strstr()
or is your actual problem how to locate one Swift string within another Swift string?– Martin R
Nov 23 '18 at 18:05
1
Then the title is misleading, and your question is for example answered here: stackoverflow.com/questions/32305891/….
– Martin R
Nov 23 '18 at 18:09
1
This is indeed an XY problem. If you don't know how to accomplish a task in a new language/OS, ask how to accomplish the task at a high level, not how you would accomplish a specific implementation. If we had simply asked the question you asked you would have gone down the wrong coding path.
– Duncan C
Nov 23 '18 at 18:50
2
The summary: "The XY problem is asking about your attempted solution rather than your actual problem. That is, you are trying to solve problem X, and you think solution Y would work, but instead of asking about X when you run into trouble, you ask about Y."
– Duncan C
Nov 24 '18 at 2:09