Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

I have a piece of code. Things i want to do: 1. Remove punctuation from beginning and end. 2. Return empty string if no alphabetic

I have a piece of code.

Things i want to do:

1. Remove punctuation from beginning and end.

2. Return empty string if no alphabetic character is found

3. Convert string to lowercase

My code is not working if I input something like: &*&98{}||{. It should return an empty string but returns 98. Can you solve this issue for me?

string cleanToken(string s) { // This for loop will remove any punctuation from the beginning until the first letter is encountered for (int i = 0, len = s.size(); i < len; i++) { if (ispunct(s[i])) { s.erase(i--, 1); len = s.size(); } else { break; } } // This for loop will remove any punctuation from the end until the first letter is encountered for (int i = s.size() - 1; i > 0; i--) { if (ispunct(s[i])) { s.erase(i); } else { break; } } transform(s.begin(), s.end(), s.begin(), ::tolower); // convert string to lowercase

return s; }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Fundamentals Of Database Management Systems

Authors: Mark L. Gillenson

3rd Edition

978-1119907466

More Books

Students also viewed these Databases questions

Question

Did gender play any role in the fortunes of Fiorina and Dunn?

Answered: 1 week ago